Okay, I’ve thought about this a bit. The obvious answer to a lot of people seemed to be “go dark souls”, but that has a bit of a different character to its combat. Zelda should probably be closer to Witcher 3 (in pace) or the 3d Ys games, except with deterministic sword strikes that vary somewhat in function. The double obvious answer is to go back to 2d and build on link to the past/oracle of seasons/the original, but that’s too easy.
Things that I would consider characteristic of Zelda’s combat up to now include the spin attack, jump attack, down thrust, and basic combo. Additionally there’s the roll, back flip, and side hop. L-Targeting/Z-Targeting have both narrowed the way combat works down to a more one-dimensional type of thing. Enemies also rotate really fast and generally stay locked on to you, rather than really committing to swinging in a specific direction. L-Targetting needs to have drawbacks added into it which make general movement more attractive as an option. Obvious one to start is reduced movement speed, which I think it might already have.
Sidehopping/rolling are the primary defensive options, so they need to be a high enough commitment that they can get out of the way of attacks, but rarely get the chance to get an attack in safely. In order to get an attack in, you should need to do these early enough so they recovery sooner than the attack you’re avoiding is even done, otherwise you’re committed to the act of dodging instead of attacking, you’re giving up your chance to attack in order to be safe. Otherwise they should come out about even with the attack you’re avoiding. Giving the roll iframes may help increase its viability as a combat option and give people reasons to not lock on (because you need to remove lock-on to roll in directions other than forward). The point of making dodge versus attack a tradeoff is to reduce reliance on dodges as a “solution”, dodge then attack. This means that in other to punish enemies, players need to move out of the way of enemies’ attacks, which is harder with the reduced movement speed of L-target.
Shields don’t work in Zelda. There’s no drawback to holding it up while locked on (except you can’t sword attack), and most enemies can’t get past it. Enemies either rebound off it, or are unphased by it, not really pressuring it in any way. You are allowed to side hop and even back flip while blocking, and enemies hitting you during these will still be blocked. Dark Souls has stamina as a regulating measure, Witcher 3 has chip damage. I feel like chip damage is a lame solution in a single player game, but stamina isn’t something that really fits in Zelda. Skyward Sword experimented with shield durability, but this isn’t a strong moment-to-moment reason to not use your shield. In my view, shielding should be another option to negate damage that has less commitment than dodges. So shielding is easier to do, but a dodge will get you further.
To make this work in Zelda, I think the obvious thing to do would be to make shields negative on block. You’re holding off the attack, but the advantage is surrendered to the enemy (and some enemies should probably be designed to take advantage of this). Beyond that, I think it makes sense to have guard breaks, like garou, dark souls 2, etc. Take too many hits on shield, you maybe glow red or something, then you get blown up.
Another potential solution is having shield glue you to the ground practically, and require you to aim in a direction, much like shield in L-Target currently does. Shield defends you practically for free when you’re locked on, and I want to capture more of the movement across and around objects on the 2d plane. Having threats come in from multiple sides and needing to defend them by orienting yourself in that direction is an obvious way of doing this.
The core point of design here is, there needs to be reasons to choose one option over another, and to not have any option be a perfect solution for any given situation. Shield and these dodge options are probably indispensable to what 3d zelda is at this point, these design decisions and good enemy design should help balance them.
Beyond that, I feel like the core of the 2d zelda structure is moving out of the way of enemies, moving to a position where you can orient to face them, and attacking. The darknuts in zelda 1 are probably the embodiment of this design idea. They walk randomly in a way that is biased to face towards you. You need to get around to their sides or back in order to attack them, as you cannot attack from the front. You need to not let them move into you in the process, because you are stuck to the ground while attacking, but they can still move. This is something 3d games are capable of doing, but which they haven’t really tried, because lock-on keeps forcing their hand, and dodge-type moves are used as an easy out. (later 2d zelda didn’t do this as well either due to enemy designs)
2d Zelda is kind of shmup-like in this way, with the additional constraint of facing direction. You can move out of the way of things, with the additional constraint that you must turn to face towards what you attack.
Part of the reason this doesn’t work as well in 3d is the camera systems. If you pull the camera in too much and tilt it too up and behind the character, it’s difficult to see the floor as a 2d plane, and difficult to perceive both that there are threats around you, and exactly where they are positioned relative to you. Fixed camera angles like in Devil May Cry help alleviate this, but they also make siderolls really awkward. For this reason, the camera should be tilted downwards more, and pulled out a bit, it would also help to design areas to be more open and to handle choke points rather carefully. Most Zelda games already have really open environments, so this isn’t too much of a problem.
The camera should ideally not follow the character too hard, sort of like Super Mario Sunshine’s camera. It should immediately be responsive to lock-on and camera stick movements, but otherwise not worry too much about framing the action behind the character’s back. The object of focus is his movement around the enemies, so the whole scene is more important, up until the player decides to lock-on and focus on a single enemy.
I considered the idea of different attacks. 2d Zelda only has one sword attack, it only really needs one sword attack. The depth of 2d Zelda is conveyed through the motions of the player around the enemies. In 3d Zelda, for whatever reason, sword attacks were kept largely the same as in 2d games, they’re really fast to come out and recover and all have straightforward attack areas. There isn’t a lot of differentiation between them or commitment to them. However because touch of death enemies were largely veto’d in 3d zelda and 3d action games categorically, and the number of enemies and their movement complexity around the player dropped, 3d Zelda games don’t capture the same type of combat depth as other games.
I checked out Majora’s mask (because I had it on hand) really quick so I could tell what attack types there were (and I hope this holds true for the other 3d Zelda). In unlocked mode, you have horizontal slices with no direction held, and overhead with a direction held. While locked on you have overhead slices by default, and horizontal slices when moving any direction but forward, and thrusts when moving forward (poor arc on the thrusts if you ask me). All of these have the same range and general framedata. When locked on you can press forward and A to do a jump attack, Link’s only unique attack besides the spin attack (which needs to be charged in majora’s mask, OoT, and WW, poor transition from 2d there, has a cooldown in TP, and costs stamina in SS).
TP has a number of unique attacks, shield bash, back slice, helm splitter, ending blow, mortal draw, and upgraded jump/spin attack. Each of these has a specific function which they’re uncontested at in dealing with specific monster types. Shield bash beats enemies with shields, back slice beats enemies with shield + armor, Helm splitter beats enemies who have shield + armor and move out of the way of back slice. Mortal Draw is a gimmick charge attack, like a better and more gimmicky version of the spin attack. Also interestingly, TP lets you attack while running without stopping your run. This is closer to what I’m going for, though I don’t know if it entirely fits in.
My instinct is to differentiate out into a bunch of attacks that serve different roles, having attack variety when locked on, and less when not, but Zelda isn’t really a game about varying levels of commitment, either in 2d or 3d.
I think a better direction would just to be focusing on the minimum number of attacks necessary to make it work. Don’t worry about the 3d action game standard counterplay of faster attacks versus well timed attacks versus outspaced hits and just focus on avoiding getting hit and getting hits in. Make it so you get all horizontal when not targeting (more forgiving for attack angle), get higher commit and longer range overhead swings when you are targeting, skip on the thrust attacks entirely (or I guess keep them in as a variation on the overhead attack much like they already are), and keep the jump attack as the only slower higher commit move. Keeping the damage the same between the locked/unlocked options should help emphasize the lower-commit unlocked options more, and thereby emphasize moving around enemies more. Honestly the attacks could even stay fast as they are probably, I probably over thought the whole attack business when it’s really more about the enemy designs. Though the issue with keeping them fast is that it becomes that much safer to dodge and attack, which isn’t something I want. Slowing down L-Target attacks at least discourages this behavior with sidehops.
Slightly more startup/end lag on the sword attacks would probably be sane, along with something limiting your ability to slash at an enemy endlessly, like pushback. Darknuts in TP can be beaten by running up to them, slashing them once with the run-by slash to get them to guard, then slashing at their exposed backside, until they arbitrarily put up their guard to repel you, then you can repeat the cycle. In WW they can be beaten by running around to their backside and slashing them repeatedly to death. These are obviously things to be avoided, and they don’t work in the 2d games because of pushback, which is a bit less arbitrary than the darknut just cutting you off in TP. There’s some in TP, but not enough to prevent you from getting heinous amounts of damage in.
Like, this is kind of the type of thing I want to see, no lock on, moving around enemies, though in this way it looks more like abuse, perhaps that’s because of the limited enemy count. I don’t want the system to break when there’s only one enemy, as it clearly does in this video. Perhaps the best answer to that is simply to not have hitstun for enemies, or to go with a hidden dizzy/poise meter much like dark souls or DMC? Do enough damage quick enough, and you can interrupt an enemy attack, and get a free shot or two. Imagine moving around the darknut, but rather than it simply taking the punishment, it keeps actively attacking as you move around it, with attacks that are a step ahead of where you need to move sometimes, so you need to watch out and adapt to where it’s attacking, or back off to where it’s safe.
Of course there’s the issue of enemy design and enemy placement. Darknuts practically design themselves. Their primary issue is their sword swipes have a kind of unclear hit area due to a poor arc in the animation (though it’s always in the front, so mystery solved), they’re not very aggressive, and they auto-block from the front. Darknuts could use attacks that cover a shallow sweep around their front (can be avoided by running around to left or right), sweeps that cover their left and right sides move (avoided by moving around to opposite side), slower wider sweeps in front, and block/dodge for variety. At mid ranges they could have attacks slow enough that the player can see exactly what they are an how to avoid it (25-33 frames), and at closer ranges they could be faster so the player only has time to see it and avoid it (16-20 frames). Mixing up between these will make the player feel unsafe to come too close to it, or press the advantage when they are not punishing a whiffed move.
I want to have blockstring pressure of some kind, otherwise the dynamic of holding up the shield versus getting guard broken doesn’t really work, but I am uncertain of how to implement it fairly. Like, there’s multiple decisions the player should be making there, but all of these decisionmaking processes are hard to implement in a way that are fair in a singleplayer game context and don’t have a clear solution despite being fair. Fair here means that the player must be able to react on some level to the information coming at them in order to make a judgement. They shouldn’t be forced to guess, otherwise whether they get punished is basically RNG, there needs to be a tell. In a multiplayer game, players can be allowed to make hard reads, so things don’t need to be reactable. Kind of a dilemma and a paradox in a single player game though, but whatever. The first decision involved is between blocking versus avoiding the blow entirely. The next is between continuing to keep the shield up, out of fear there may be another blow versus escaping. The last is a hope to punish the opponent for overextending.
My thought for this is to focus on the breaks in the blockstring, when they are, and how long they are. You can have a tell in the form of a glint in the enemy’s eye or a subtle thing at the end of an attack animation to let the player know they have a chance to escape on the next attack. These attacks that give the chance to escape should obviously deal more guard damage since they’re the ones the guy should be breaking out on. On these attacks, the player can jump out without being punished if they react and time it correctly. Then there should be other breaks that have a longer windup to allow the player to drop their guard completely and attack back at the enemy.
So maybe you have a sequence of 5 attacks, so the breaks could potentially come at 4 points between those. Lets say you always have at least one escape attempt, and at least one chance to fight back. If they don’t know when these are coming, then they could miss their opportunity when they do, though the trouble is I don’t see much reason why someone would get caught trying to get out when their opportunity didn’t arrive yet, and I don’t really have a way to fix that flaw that doesn’t result in unfair RNG on some level, so whatever.
Though to be honest, it’s silly to have blockstring pressure in a zelda game, it’s really not what zelda’s about, but that shield taunts me and I can’t think of another way to make it really mesh. If you have guard damage just last for a long time and regenerate slowly, then it would probably work fine as a tradeoff without any silly blockstring nonsense (though it also wouldn’t put people in direct threat of getting guard broken often). But hey, here’s a system that could be used in some other game probably.
The broader issue with most of 3d Zelda’s enemies is that it’s a battle of the quick and the dead. Link is quick, and the enemies are dead. Most of them you don’t really have to think about, you can lock on, their friends aren’t too keen on attacking, and you can wail on them unopposed. Enemies come straight at you, and you can slash them when they’re in range by locking onto them. Refer back to that cave of ordeals footage. A lot of it is seriously just mashing A.
In the original Legend of Zelda, you can have 5-6 enemies all on the screen at once moving around, hurting you if they touch you. You have restrictive terrain boxing you into enemy encounters. You have enemies that appear out of the ground and come at you in the desert, you have lots of enemies that shoot projectiles in addition to approaching up close. Some rooms have turrets that shoot fire in the corners that go off by themselves, some have blade traps that run along the edges of the screen. Some enemies rush at you if you’re in their line of sight, some can only be hit from their sides. Most of them move erratically, some jump faster than you can walk. You have all these threats coming at you from different angles, and you can’t mash A to deal with one without being hurt by another.
Some obvious things to emphasize are movement patterns other than moving straight at you, having some enemies be inclined to try to surround you by moving to a position that is on a side of you where few other enemies are, but also be drawn in to attack you as they get closer into that position and closer to you, maybe teleporting around you, and liberally applying projectiles that aren’t just flaming arrows. Slower windup on the sword and removing hitstun will probably reduce the issue of being able to interrupt enemies before they can attack you, so the player is forced to avoid attacks before attacking rather than hit first ask questions never.
The goal is to keep the player moving around the enemies and finding chances to hit them.
Items like the bow and hookshot could probably be integrated better into combat and the like by not requiring you to go into first person view to aim them. Imagine if holding down the button projected a red line off from the direction you’re currently aiming, and releasing the button fired it off in that direction. You could require the player to stop when doing this, or let them move around freely, it’s your call. If they’re allowed to move around freely, then having the items lock on to targets near the line of fire (by drawing another line indicating the corrected trajectory) would probably be more forgiving. The hook shot could probably see additional use as a movement tool if it could latch onto more walls to pull Link quickly around. Allowing the hook shot and boomerang to be one of the rare ways to stun enemies, interrupting their attacks, would probably help differentiate them, as long as safety measures were set up to prevent stunlocking and easily killing off more powerful enemies (like biasing them towards faster attacks in the short term, and not having the hitstun be very long). It could be tolerable in encounters with weaker enemies if there are multiple of them. Maybe allow people to cancel firing these by pressing another button, maybe have a first person mode by holding a trigger button.
Overall, I’d pare the item selection down to bow, hookshot, bombs, boomerang, roc’s feather/cape, power bracelet, bottles, pegasus boots/pegasus seed, candle/ember seed, and deku leaf. These are the only items that really stand out to me for unique functionality. The magic rod/fire rod is also nice, but it overlaps with the bow a lot.
To give a brief overview, the bow is directed long range projectile damage, the hookshot can stun and be used as a quick movement tool, bombs can be thrown and explode, propelling the player and enemies as well as dealing big damage, boomerang can deal hitstun, and be directed around in funny ways, roc’s feather could add a command jump (missing from 3d zelda, dunno how it would be integrated into the broader system), Power bracelet allows items to be picked up and thrown (passive ability, more related to environmental objects than the player character), bottles function as healing/magic/extra lives, pegasus boots allow you to move faster after a startup period, and rebounding off walls works as an impromptu jump, candle/ember seed can both make fires on the ground that deal sustained damage within an area, deku leaf can hover and push enemies around.
The ranged weapons and bottles present some minor issues in their prior implementations. Bows, boomerangs, and hookshots all hit their targets for free when locked on in previous 3d zelda games. One easy way to solve that is to have the lock-on button be the same as the first person view button for these weapons. Also bottles need to be used in realtime or they’re free healing. The whole dynamic of being able to predict enemies far enough into the future to find a chance to heal from Dark Souls should obviously be the one to aim for here. Long startup time, if interrupted you get nothing and lose a healing item too.
On the UX side. Make all text boxes instantly complete with the B button and progress to the next one with the A button. Maybe have a delay of a few frames to help people read what’s in the box while they’re mashing B and A. Allow any cutscene to be paused by pressing start, and skipped by pressing A after start. Make the pause screen come up a lot faster (seriously, it’s slow in EVERY zelda game, even the 2d ones, I don’t get it). Shorten and eliminate as many mini-cutscenes as possible. Players do NOT need to see that their hookshot connected for the one billionth time. Rupees, have a flag in the goddamn save file remembering if people picked up a given rupee value, and if you’re so damn concerned about them forgetting it, have +30 rupees or whatever pop up over the rupee counter. For that matter, skip the rupee cutscenes altogether.
You could very easily follow the existing control scheme even with my proposed design changes.
B = Sword
A = Dodge/jump attack when locked on, environmental interaction/roll/pegasus boots when not locked on
XYZ = Assignable items
L = L-Target/First Person View
R = Shield
Dpad = Maybe a quick item change menu system?
Bosses could take a cue from the better 2d bosses like Gleeok, Patra, Moldorm, helmasaur king, Mothula, true Agahnim, Onox, later phases of Veran. I admit that even some of these aren’t terribly great. Could probably take cues from Ys bosses too and maybe bloodborne bosses, in particular their varied attack patterns with the randomized fakeouts, since we’re having the whole block and dodge thing in place like a 3d action game.
Invent a random drop algorithm similar to the one from the first game, that let people force certain drops by killing multiple enemies in a row without being hit.
Damage on later enemies in the game doesn’t need to go up significantly as long as enemy patterns remain tough. 3d Zelda has a problem with you getting 20 hearts because they don’t ramp the damage or enemy counts up, so you’re fighting the final boss and it’s like, “damn, that attack only does 2 hearts?” Similar to Metroid, Zelda’s supposed to work by attrition, slowly wearing the player down. Later in the game the player has bottles that can replenish hearts, these probably shouldn’t restore the whole thing, fairies should probably restore less than red bottles, and if actively used, there should be a risk of being hit, losing the bottle completely, stressing that the player can look far ahead enough into the future to find a place where they can heal and nothing will hit them.
I’m too tired to think of a good world structure that incorporates the best elements of open world nonlinearity from zelda 1 and LttP dark world with the sequence breaking of the 3d games. So that’s all I got. Plot could probably follow from that valley of the flood hoax, because I liked that idea. He’s a fake hero, but maybe the spirit of the series might get reincarnated in him, even though he’s not the hero hyrule needs, and the tragedy is he’s doomed to fail? Could potentially be interesting from a meta-narrative point of view if you don’t push it too hard. And you could end with a supposed-to-lose boss fight that you can actually win, or attempt to turn that trope on its head by making the losing process actually engaging or strategic in some way, much like how undertale makes pacifism interesting by requiring you to survive anyway. Perhaps you could have 3 endings, where the easy way out is dying because you think it can’t be won (hell, have a decoy ending cutscene here that can be skipped to go straight to the main menu, but don’t save the game so people can reload and retry), the medium way is to kill the boss, conquering fate and all, and the hardest way is to endure into sacrifice, and come up with alternate uses for some of the weapons.
Would be a fun fan-game idea. Wonder how close the story/characters/setting/naming could get without infringing on copyright.