ブログはじめました。日本語だと不便です。機能も少ないです。 なのでそのうち他のサービスを探します。ここはとりあえず実験的に。

火曜日, 2月 25, 2020

Exploring Monster Taming Mechanics In Final Fantasy XIII-2

Let's just get this out of the way. I'm a huge Final Fantasy fan. I adore the original game even today, Final Fantasy VI is definitely the best of the franchise, and I've found things to enjoy in every one that I've played, which is nearly all of the main-line games. (I still haven't managed to crack open FFIII, but I plan to soon.) Even each of the games in the Final Fantasy XIII trilogy had something that drew me in and kept me going through the game, wanting to learn more. These games get a lot of flack for being sub-par installments in the Final Fantasy franchise, and some of the criticism is warranted. The story is convoluted, and the plot is as confusing as quantum mechanics.

That debate, however, is not why we're here now. We're here to look at one of the great aspects of FFXIII-2: the monster taming and infusion system.


This system is deep and complex, but not in the off-putting way that the plot is. The amount of variety and configurability in the monsters that you can recruit to fight alongside Serah and Noel is astonishing, which is nice because those two are somewhat lacking in that department. Their development paths are fairly linear. There are a few choices about what strengths to give them as they level up in the "crystarium," but it's mostly a matter of ordering the abilities they learn and doesn't make much difference in the end. The monsters, on the other hand, allow for huge variations in development that results in a system with fascinating choices for optimization and prioritization. Figuring out how to capture and develop powerful monsters early in the game is great fun, and its this characteristic of Final Fantasy games—of finding ways to build a strong party early in the game without tedious grinding—that I really enjoy.

On a totally different note, I've been considering different ways to practice using databases and building simple websites, and the monster taming system is complex enough and interesting enough that it would make for a good collection of content to use for that practice while having some fun in the process. So, the other goal of this series, other than exploring the monster taming system in FFXIII-2, is to explore how to get a data set into a database, put it up on a website with Ruby on Rails, and experiment with that data set in some novel ways. Before we get into all of that, however, we need to understand what the heck we're putting in the database in the first place, and to do that we need to understand this monster taming system in detail.

Monster Taming

Okay, what is this monster taming, and why is it so complicated? We'll have to start at the beginning and work our way through the system. At the start of the game there's just Serah, trying to stay alive. (Actually, the very start of the game is a flashy battle sequence and confusing plot points with Lightning, but let's ignore that.) Pretty soon Noel shows up and decides to help Serah out, so now it's a party of two. This setup goes on for a couple levels, but it's pretty weird for a Final Fantasy game. Normally there's three or four characters in a party. Then we come to a pitched battle with a Cait Sith and a Zwerg Scandroid. There will be a lot of weird monster names throughout this series. You're just going to have to roll with it. Anyway, after creaming the cat and the droid, they turn into monster crystals, which are basically the essence of monsters. These crystals are stored in your monster inventory, and you can assign three of them to coveted spots in your "Paradigm Pack" (not the name I would have picked). These three monster spirits will fight with you in battle, and so begins your long and precarious journey as the monster whisperer.

Monsters come in six basic varieties, conveniently matching the six roles that Serah and Noel can assume. These six role are briefly explained as follows:
  • Commando - The Arnold Schwarzenegger role, plenty of strength, short on finesse.
  • Ravager - The mage role, uses attack magic.
  • Sentinel - This is a tank role, not many attacking options, but it absorbs damage like it's nothing.
  • Saboteur - Weakens the enemy by removing protections and inflicting ailments like poison and slow.
  • Synergist - Strengthens the party with offensive and defensive enhancements. Also moonlights as a business executive.
  • Medic - Heals the party, and possibly the only obvious role name of the bunch.
While Serah and Noel can switch between these roles, the tamed monsters have fixed roles. Switching the monster's role switches the monster, and there are three role possibilities for any given battle corresponding to the three monsters that are on deck. The monster's type is only the beginning of what a monster is, though. There is so much more.

Monster Training

Monsters can gain experience just like Serah and Noel. Both the humans and the monsters have crystariums where they advance along a path to gain abilities and increase their stats. While the humans have a crystarium for each of their six roles, the monsters each have one crystarium, possibly with multiple levels, where they gain their abilities and stats. Because the crystariums of the monsters are more unique to the monster itself, each monster type will learn a unique set of abilities and end up with different stats. Additionally, while the humans can move through their crystariums by spending crystarium points gained from winning battles, monsters can only advance on their crystariums by using various types of monster materials that are dropped by defeating monsters in battle. This seems to be some form of cannibalism, but it's pretty mild because the materials are bolts and orbs and other things like that. Monsters require different materials for their crystariums depending on what level they're on their crystarium, and if they're biological or mechanical monsters. Different materials will also give different bonuses to the monster's health, strength, magic, or all three stats.

Following so far? Because we're just getting started. This monster whispering is intricate stuff. On top of the unique upgrade paths, abilities, and materials, each monster spirit has a set of characteristics that relate to how they will develop as they level up. A monster can be a "late bloomer," meaning it may be weak to start with, but it can reach the upper levels 70-99 of its crystarium. Maybe the monster is "brainy," meaning that it will learn lots of abilities, or it's "flameproof," which is pretty self-explanatory. There are 29 characteristics in all, and any given monster can have up to four of them. Monsters will also come with some initial abilities, whether that be actions like casting certain spells and attacking or passive abilities like "armor breaker" that allows it to penetrate an enemy's physical defense. Taming and training monsters are not the only ways to get monsters with certain abilities, however. This is where things get real, as in real complicated.

Monster Infusion

The third way to give a particular monster new and wonderful abilities is to take another monster that has the desired ability(ies) and fuse them into the desired monster through a magical monster infusion process. How does this work exactly? Who knows! How did materia work in FFVII, or guardian force cards in FFVIII? It's a Final Fantasy game; some things you just have to accept without question and move on. The source monster spirit is lost in this process of infusing the target monster with new abilities. It's a destructive process.

Losing the source monster is not the only cost, though. There are restrictions as well. The first restriction is that a monster can only have 10 passive abilities. If a monster accumulates more than 10 passive abilities, some of them are going to have to go. These abilities all have a rank, and higher ranked abilities will stick to a monster better than lower ranked abilities. Also, newer abilities are stickier than older abilities, according to when the monster learned them. The lowest ranked abilities will get the boot first, with order of acquisition being the tie-breaker—first in, first out.

The next restriction is red-locked abilities. These are abilities that cannot be transferred to or removed from a monster, ever. This restriction is pretty simple, unlike the next one.

Monsters can also have yellow-locked abilities, although these locks never exist by default. Yellow locks can be created, propagated, and destroyed by infusing abilities of the same type in various ways. Two abilities are the same type if they modify the same attribute. For example, HP +10% and HP +25% would be of the same type. Also, HP +10% is a lower rank than HP +25%. That's important for yellow locks because if you infuse a monster that already has a lower rank ability with an equal or higher rank ability of the same type, the infused ability comes with a yellow lock and will stay put when the monster's abilities overflow. Generally, if an ability of higher rank is added to a yellow-locked ability of lower rank, the yellow lock is kept. If an ability of equal or lower rank is added to a yellow-locked ability, the yellow lock is destroyed. It's a bit more complicated than that because there are about a dozen different combinations, but this summary should be sufficient for the purpose of setting the requirements of the database. Basically, we want to make sure we know the rank of each ability so that we can figure out the best way to develop monsters' abilities.

All of the red lock and yellow lock stuff has to do with passive abilities, but there are two other types of abilities that come into play with monster infusion: role abilities and hidden abilities. Role abilities are the actions that the monster will take in battle, and there is no limit to the number of these abilities that a monster can have. When a source monster is infused, you can choose from its role abilities up to the number that its crystarium stage is at, which will be 1-5 depending on how much you can level up the monster and how much you actually leveled it up. The disadvantage of infusing too many role abilities on a monster is that you don't have control over what it does in battle, and if it has too many options, it probably won't be doing what you want it to do when you need it most. Decide what you're going to use a monster for, and then don't give it choices. You can't remove role abilities once they're infused.

Lastly, hidden abilities are learned by a monster when it is infused with 99 levels worth of monsters of the opposite role. Commando and Ravager are opposites (makes sense), Saboteur and Synergist are opposites (makes even more sense), and Sentinel and Medic are opposites (the leftovers, I guess). For example, you could infuse nine level 17 Zwerg Scandroids onto your Red Chocobo, and it'll learn Jeopardize, which boosts the bonus the chocobo gets when attacking a staggered enemy. Each role has it's own hidden ability that it gets when those 99 levels of monsters of the opposite role are infused into it.

Acquiring the Data for the Database

Okay, that was a bunch of intricate, complicated stuff, but it gives us a good idea of what kind of data we want to put in our database so we can link it up and ask interesting questions about monster infusion. 

First, we want to know all about monsters:
  • What's its name?
  • Is it tamable? We might have a separate tamable monster table since most of the following properties wouldn't apply to non-tamable monsters.
  • What materials does it drop in battle?
  • What's its role?
  • Where in the game can we find it?
  • What are its characteristics?
  • What's its max level?
  • What are its starting and ending stats (HP, strength, and magic)?
  • What are its starting abilities?
  • What abilities does it learn and at which crystarium levels?
  • How many crystarium stages does it have?
  • What is its feral link? (We didn't talk about this. It's a special action that can be triggered when the monster gets hit too much.)
  • What does the feral link do?
  • We could also include pictures if we want to get fancy.
We also want to know about abilities. This will be a separate table:
  • What's its name?
  • What's its rank?
  • What does it do?
  • Is it passive, role, or hidden? These may be separate tables, since they're different enough to warrant it.
  • Which role is it associated with?
We'll be interested in at least one aspect of the areas in the game:
  • What's its name?
  • How early can we reach this area? I.e. which area unlocks this area?
Since there's a fair number of monster materials, we'll want to keep track of those:
  • What's its name?
  • Is it biological or mechanical?
  • What stage of the crystarium is it for?
  • Does it boost HP, strength, magic, or all three? (The name does give this away, but let's be thorough.)
We'll also want to know a little about the monster characteristics because the names are not self-explanatory:
  • What's its name?
  • What does it mean?
This is shaping up to be a reasonably complex database with 5-8 tables interlinked by these different items' names. The relations in the database will happen through IDs, but everything does have a name as well. The names will be what appears in the tables presented as views of the database, likely with hyperlinks to their information in their own tables. So how should we get all of this data into a database? I certainly don't want to enter it by hand. There's over 150 monsters, dozens of abilities, and dozens of properties for each monster. 

Luckily, some ambitious people have already done the hard work of writing out all of these things in an FAQ, and it's available on gamefaqs.com. The Monster Infusion FAQ by sakurayule, BMSirius, and Taly932 contains almost everything we want to put in the database. It also contains example builds for post-game super monsters, but we're going to look at something a bit different with this series. We want to figure out the best monster builds we can do during the game in order to have monsters that can help us through the game without the need to do any grinding. All of the necessary information is in that FAQ. We just have to write a script to parse it and put it in a form that's easy to import into the database. That parsing script is what we'll figure out how to write in the next episode.

月曜日, 2月 24, 2020

MONEY LOVES SILENCE - GameSpot New Game

MONEY LOVES SILENCE

土曜日, 2月 22, 2020

Recent Painting/Basing

Just some recently finished bits and pieces.

3x Panzer IVs with various gun options.
Plastic, Battlefront Miniatures

Fiat Cr.32 "Chirri" for the Nationalists in Spanish Civil War
1:100 by Minairons

It's a cool piece but a little fiddly to put together.

Goblin Pyros for Pathfinder
Reaper Bones

金曜日, 2月 21, 2020

Suzy Cube Update: March 9, 2018

#SuzyCube #gamedev #indiedev #madewithunity @NoodlecakeGames 
One more week closer to GDC! Let's see what we've got this Friday!
Read more »

Kanto Underground

During my visit with Poké Maniac Bill, he mentioned a Pokémon tournament that was being hosted in Vermilion City. He had been invited to attend, but his illness was currently preventing him from traveling. He'd given his tickets to some other trainers, but assured me that if I made it in time they would consider me a contender with two gym badges. So after acquiring the Cascade Badge from Misty, I decided my next destination in Kanto would be Vermilion City. The tournament was held aboard a luxury cruise ship named the S.S. Anne where it was being hosted to entertain passengers with displays of Kanto Pokémon and its trainers. Local trainers were organized into tiers and allowed to battle the crew, interested passengers, and each other for various prizes. Key among the prizes was a Hidden Machine, a secret technical machine, that allowed certain Pokémon the ability to learn useful skills that they wouldn't otherwise have access to. This one in particular was owned by the captain of the S.S. Anne and was able to teach lucky Pokémon how to adeptly cut through overgrowth. I was interested to say the least.
Just south of Cerulean City lived a kind old man in a secluded homestead offering a Pokémon Daycare service. This kind of small business is a lot more widespread nowadays, but back then it was a bit of a novelty. He allowed any trainer registered within the Indigo League of Kanto to leave one Pokémon in his care for a nominal fee. I had never heard of anything like this at the time, but after our brief conversation, I used Bill's transfer system to bring Charlie out of storage and into the old man's care. At the daycare, he would get lots of exercise and activity and be allowed to play and train with other Pokémon instead of just waiting in storage. It seemed like a really good way to get him some extra training in case anything unspeakable ever happened to Kiwi. The old man assured me that he'd been doing this for a long time now and Charlie was in good hands.
I was attacked by some wild Pidgey on Route 5, but I decided to save my Pokéballs for better options since I had Kiwi and Charlie as members of Team Fox. It didn't seem prudent to waste the resources on a third fighting Pidgey. It was during this time between Cerulean and Vermilion that I was starting to think about the future battles. I had to be careful with upcoming Gym Leaders and at the Indigo Plateau and I had to plan accordingly. After passing on acquiring a new Pidgey on Route 5, I made an effort to avoid more wild encounters in the future unless I was ready to add a potential candidate to my team. The way I was training my Pokémon meant that every new capture had to be strategic going forward. An army of Pidgey weren't going to win me the rest of my battles.

I was pretty oblivious to this at the time, but the region of Kanto was in a bit of upheaval the first time I was there. As I mentioned, I wasn't really aware of Team Rocket much before my unfortunate encounter with them at Mount Moon. I didn't realize what a hold they had on the region. I also didn't realize that things were changing rapidly since their operation at Mount Moon crumbled. For a long time the organization moved in the shadows, acquiring Pokémon and using them for illegal activities without drawing much attention to themselves, but things were now changing since two local trainers had them riled up. I mention it now because typically moving south from Cerulean, you would end up in Saffron City before heading to Vermilion City, but Saffron was under a bit of a lock-down thanks to Team Rocket activities. Police sentries were posted on all sides of the city and were not allowing anyone in or out of the city. They tried to explain the situation to me the best they could, but I really didn't understand the gravity of it and they got impatient trying to explain to me why I needed to get to Vermilion another way.
This other way was an underground passage originally intended to be developed into a subway system to and from Saffron City. It's development had been abandoned due to escalating economic tension between the local government and Team Rocket. It now served as a convenient, although shady, underpass between Cerulean and Vermilion, as well as Lavender Town and Celadon City. You could bypass Saffron City entirely this way. The path was reasonably lit and maintained by local volunteers. Pokémon battles were prohibited and efforts were made to repel Pokémon from infiltrating the path as long as it was needed. Apparently Saffron had been cut off from the world for some time in order for this to have been as well established as it was, but again I was ignorant of the state of affairs in Kanto at that time. I merely enjoyed an uninterupted stroll underground, picking up various shiny objects I happened upon.

I arrived in Vermilion City sometime in the evening. I managed to secure a place to sleep for a few nights and then set out to learn what I could about the local Pokémon scene. I could see the S.S. Anne to the south all lit up like an angry Electrode. Tomorrow I would have to find a way to get into the tournament aboard and hopefully earn my access to that Hidden Machine, but I did have a few other concerns. The gym leader in Vermilion was not a push-over and he favored electric attacks above all else. It earned him his nickname as Lt. Surge. As it stood, my team consisted mostly of flying Pokémon who would easily be burst out of the sky by a well placed thunderbolt. Kiwi, Lucky, Vesper and Shakespear were all going to be huge liabilities in the Vermilion Gym. Arnold had recently evolved on his way south through Route 5 and 6, but I wasn't sure that my powerful Gloom could stand up to the kind of voltage Lt. Surge was known to put out. It seemed clear that Arnold and Rascal Jr. Simply weren't going to be enough to ensure a victory here in Vermilion. If I were going to get a new Pokémon, then the battles aboard the S.S. Anne would be a great training ground for them, so I set out that evening to add one more friend to my roster.
Vermilion City is the busiest port in the Kanto region and naturally surrounded mostly by water. Water-based Pokémon weren't going to stand a chance against Lt. Surge when I went to face him, so I had to look somewhere else. I had overheard that just beyond the city limits was a small rock tunnel the locals called Diglett's Cave, because it had been dug out by a large colony of Diglett and Dugtrio. Though it was a bit unsettling to crawl into their nest, I knew a Diglett or a Dugtrio would be the perfect addition to the team and the perfect counter to Lt. Surge. Their ground affinity would make them immune to any electric attacks Lt. Surge could throw at them. So despite my apprehension and the apparent dangers of crawling into a Diglett tunnel at night, I felt I had no choice.

Almost instantly I was assaulted by a Diglett who did not like me mucking around in his home. He was a quick! It was tricky to pin him down with my team. Lucky was able to put him to sleep with the powder off his wings, and it took a few balls to snag him without causing him to faint. Fortunately, we captured Douglas before any reinforcements could arrive and we made a hastey retreat from Diglett's Cave. Douglas replaced Shakespear on my team since official Pokémon League rules only allowed a trainer to carry a maximum of 6 Pokémon. Shakespear would rest comfortably in Bill's Storage System while Douglas stayed with me to train up for the Vermilion Gym. I slept easy that night knowing that Douglas would secure my victory against Lt. Surge and all I had to do now was get aboard the S.S. Anne to do some intensive training - and get my hands on that Hidden Machine.

Current Team:
Attacks in Blue are recently learned.



Bill's Storage: Shakespear (Spearow)

Old Man Daycare: Charlie (Pidgey)

Game Boy Interface Revisited

A few years ago, I discussed a piece of homebrew software called Game Boy Interface (GBI).  GBI was written and is maintained by a GameCube enthusiast who goes by the handle Extrems.  Extrems intended to replace the official Game Boy Player (GBP) Start-Up disc for the GameCube which, when combined with the attachment that is fitted underneath your GameCube, allows you to play Game Boy, Game Boy Color and Game Boy Advance cartridges using genuine GBA hardware.  Before GBI, if you did not have the official disc, your GBP attachment was useless.  GBI quickly made the official disc essentially obsolete, but the software has been radically revised since I first profiled it.  Let's return and see what's changed and I will give my own personal take on how I like to use the software.  This will not be a fully comprehensive guide because there are features geared toward hardware I do not own and uses I do not put GBI, but if you are new to GBI you may find something here instructive.

Read more »

木曜日, 2月 20, 2020

Games Design Graduate Lands Job In UCLan's Innovation Lab.

Congratulations to our Games Design graduate, and Alumni, Jakob MacDonald who just started his new job at UCLan in the Innovation Lab where he gets to explore lots of new technology and work with a talented team led by Danny Livingstone, with some great clients!

In his own words he's doing,

'Games Design and XR development now! Basically playing around with VR and Hololens, literally anything from 3D architectural simulations to Augmented medical procedures.'

Well done Jakob !



The End Of Familiarity (Tradecraft)

When you walk into my store and look to the right, the designated direction Americans gaze when entering a store, you'll find a plethora of familiar game titles. Monopoly, Yahtzee, Scrabble, all the usual suspects. This is what is known as a "merchandising expense," games I stock that I would rather not, that indicate to the uninitiated that I am a safe place with things they are familiar with. This is a game store with games, you know, game games, as one customer recently described it. This practice is now coming to an end.

Here's how that works. First, hobby games have penetrated the mass market and they've been there now for a good, long time. Unless you're living under a rock, if you've been to Target and WalMart in the last decade and care even an inkling about games, enough to roll your red or blue cart past them, you've seen Settlers of Catan, Ticket to Ride, Carcassonne and other former hobby game store exclusive titles.

These titles have declined for us significantly since their introduction in mass market, with the promise they are gateways to good times for us later. Perhaps this is true, perhaps not, but board games are booming. These titles are now familiar to consumers. They've become evergreens on the shelf of mass market stores. This means hobby game stores don't need to work as hard with our garbage merchandising expenses to show familiarity. Chess sets and Hasborg products can be dropped, if you feel your community have these touchstones in their lives. And what community doesn't?

Second, even if I don't have this market penetration that breeds familiarity, there are now enough regular folks who play hobby games to where I need the space taken up by oversized merchandising inventory. I may lose the completely out of touch customer, but my overall base is so much larger than a decade ago, I can afford it. What I can't afford to do is stock quaint product for muggles when I've got educated consumers flocking to my business and demanding games now. They will just as easily, and without a moment of regret, buy it online, so it better be there now.

In general, if you don't know or are frightened by products like Dungeons & Dragons, Ticket to Ride, Pokemon and Magic: The Gathering, you are simply not worth any of my time whatsoever. Through mass market stores and the Internet, the public has been converted from suspects to prospects. In fact, it has turned many from prospects to customers, bypassing hobby game stores completely. I am at the tail end of this equation, taking in what I can of a cultural shift, in which a hurricane of customers have been created and I'm trying to fill up a thimble, arm outstretched into the clouds, while dying of thirst. As with all revolutions, you never know exactly your place in it until shots are fired.

Games in my parents guest room. One of these things is not like the other.

金曜日, 2月 14, 2020

Brave Browser the Best privacy-focused Browser of 2020



Out of all the privacy-focused products and apps available on the market, Brave has been voted the best. Other winners of Product Hunt's Golden Kitty awards showed that there was a huge interest in privacy-enhancing products and apps such as chats, maps, and other collaboration tools.

An extremely productive year for Brave

Last year has been a pivotal one for the crypto industry, but few companies managed to see the kind of success Brave did. Almost every day of the year has been packed witch action, as the company managed to officially launch its browser, get its Basic Attention Token out, and onboard hundreds of thousands of verified publishers on its rewards platform.

Luckily, the effort Brave has been putting into its product hasn't gone unnoticed.

The company's revolutionary browser has been voted the best privacy-focused product of 2019, for which it received a Golden Kitty award. The awards, hosted by Product Hunt, were given to the most popular products across 23 different product categories.

Ryan Hoover, the founder of Product Hunt said:

"Our annual Golden Kitty awards celebrate all the great products that makers have launched throughout the year"

Brave's win is important for the company—with this year seeing the most user votes ever, it's a clear indicator of the browser's rapidly rising popularity.

Privacy and blockchain are the strongest forces in tech right now

If reaching 10 million monthly active users in December was Brave's crown achievement, then the Product Hunt award was the cherry on top.

The recognition Brave got from Product Hunt users shows that a market for privacy-focused apps is thriving. All of the apps and products that got a Golden Kitty award from Product Hunt users focused heavily on data protection. Everything from automatic investment apps and remote collaboration tools to smart home products emphasized their privacy.

AI and machine learning rose as another note-worthy trend, but blockchain seemed to be the most dominating force in app development. Blockchain-based messaging apps and maps were hugely popular with Product Hunt users, who seem to value innovation and security.

For those users, Brave is a perfect platform. The company's research and development team has recently debuted its privacy-preserving distributed VPN, which could potentially bring even more security to the user than its already existing Tor extension.

Brave's effort to revolutionize the advertising industry has also been recognized by some of the biggest names in publishing—major publications such as The Washington Post, The Guardian, NDTV, NPR, and Qz have all joined the platform. Some of the highest-ranking websites in the world, including Wikipedia, WikiHow, Vimeo, Internet Archive, and DuckDuckGo, are also among Brave's 390,000 verified publishers.

Earn Basic Attention Token (BAT) with Brave Web Browser

Try Brave Browser

Get $5 in free BAT to donate to the websites of your choice.