By ZaneDubya on Jul 19, 2020
Hail friends! A few more changes to report.
You can now view the in-game forums on the website at MedievaLands.com. Posting to the forums is only available when you are logged into the in-game client.
I now show your character's individual achievement score on its portrait, instead of the total score for your account. Your account still has its separate total score, even though this is not visible. I will come up with a way to display this as well.
You can now see monster buffs and debuffs in combat. Thanks for requesting this, Azameth - it's been a long time coming!
Fixed a bug where Twinion achievements would not ever show up. All characters have been retroactively awarded any Twinion achievements they would have previously been granted. Thanks for reporting this bug, Teiken!
Fixed a bug where if the party leader disconnected, the remaining party members would "fly" back to where they entered the map. Thanks for reporting this bug, Bobi!
Finally, I fixed a regression in the Mac patcher which caused the patching program to always download the latest patched client regardless of whether the client was actually out of date.
I am still working on the item revamp. Perhaps I'll have something to report on this front soon. Hope springs eternal.
Take care down there!
By ZaneDubya on Jul 6, 2020
Hail Friends! Hope you have all been well. My work on the item system revamp continues behind the scenes. In the meantime, I have pushed a few bug fixes out in the past week, which I'm noting here:
By ZaneDubya on Jun 22, 2020
Hail Friends! Hope you have all been well. After a month of rest I am back working on MedievaLands.
Today's patch is small, in that it does not add any new features.
But it is also large, in that it involves thousands of changed lines of code and a huge update to the framework used by the game to show graphics, play sounds, and run on your computer.
This is necessary preparation to keep the game compatible with future versions of Windows and macOS.
If the game crashes on you, please let me know by e-mail to hello(at)medievalands.com.
I hope I will have more new features to share with you soon. Until then, take care!
By ZaneDubya on Apr 8, 2020
Hail Friends! Here is a list of what I've been working on in the past week: bugs fixed, other changes to the game engine, and a small change to allow the new elemental items to be sold in the keep. Much of my work this week was in preparation for new features which I'll hopefully be adding to the game soon: new items, achievements in Twinion, and a new higher definition dungeon exploration screen.
Changes in game functionality:
Changes to the game engine:
By ZaneDubya on Apr 1, 2020
Hail Friends! We are sixteen days away from the Grand Release of Twinion. I have almost completed the outstanding features I wanted in place for the release, and I am hopeful that my work schedule is easing up to the point that I can start working on some stretch goals.
I haven't posted patch notes for some time, so this is a bit of a catch up edition. Read on for a list of features added and bugs fixed over the past three weeks, and as always, let me know if you come across any bugs!
Changes in game functionality:
By ZaneDubya on Mar 27, 2020
Today have news about a delay in the grand release of Twinion, patch notes from the features and bugs I've been working on in the past few hurried weeks, and a call for discussion about MedievaLands SysOps.
Before I continue, I would like to relate how thankful I am for everyone who is logging in to play this game. I so much enjoy seeing people in the Tavern, talking with you, and responding to bug reports, feature requests, and the occasional bout of roleplay. I am continually motivated to continue working on this game when I see people playing.
I know that many of us are working overtime in response to the pandemic, and many of us need a diversion from the same, and many of us are not quite sure what is going to happen in the coming weeks and are looking for an escape. I feel all of those things every day; I'm right there with you. And I'm happy MedievaLands can help fit that need.
Thanks for taking the time to read this little ramble of mine. Let's get on to some updates!
Grand Release Delayed to April
I don't like to miss dates that I've set, but I also know this is for the best. I had originally planned a 'grand release' of Twinion for today, March 27. I am temporarily delaying that release. This delay will not change the fact that every player of MedievaLands already has access to Twinion; it merely delays the wide publication of the availability of this game.
I make this decision because work has stolen me away for the past three weeks, and the slowdown in development has kept me from completing features and bug fixes that I want to have in place before we enter a period of publicity. Also, I feel like when this game does go public, I'll need to be highly available to answer questions and greet new players, and I admit that I don't have the energy to do that right now.
I have no doubt that this period is temporary, and as soon as things begin to calm down I will let you know when to expect the general release. My hope is that I'll be able to do the grand release in three weeks, on April 17. Keep an eye on this space, and you'll be the first to know when we're getting ready for the Twinion debut.
What I've been working on
Although I haven't been present in the Tavern of late, I have continued to focus the time I have on fixing bugs and adding features requested by players. Thank you so much for your detailed thoughts - even where I haven't responded, I've read everything you've said, posted, and sent via email.
Some of you have expressed surprise that new bugs keep popping up, and I think that's an entirely fair concern. Behind the scenes, I've been rewriting many of the game systems that underpin Yserbius and Twinion. Most recently, I've rewritten the treasure table system, allowing custom item drops in the dungeon (which is where those elemental stones which Azameth has written about come from!), moved the map hosting to the server, and have recently started a new item framework that will allow the addition of even more new items.
By the time MedievaLands is ready for the grand release of Twinion, I hope to have added the original Twinion music, a simple form of player pets, more options for items to find throughout the dungeon, debuffs on enemies in combat, and continued polish throughout the game's user interface. Look out for more good stuff, coming soon!
What are your thoughts about SysOps
I'm going to be starting a conversation about inviting people to be SysOps on MedievaLands. Please look for that in the General Discussion forum. I really appreciate your time and thoughts on this topic, as I think it will help free up my time to focus on development. Looking forward to hearing from you!
As always, my absolute best to you all.
By ZaneDubya on Mar 6, 2020
I want to let you know that I have added Twinion to the MedievaLands game, and I am inviting you to beta test this new game. You will find that your account already has access: you can download the game at https://medievalands.com. If you need help with your password, please e-mail me at hello(at)medievalands.com and I will help you directly.
I am so excited to share this with you and other testers before I reach out to anyone else. I hope you will join me in testing this recreation of Twinion. As you test the game, when you discover bugs, you can let me know about them by:
This is not simply a recreation of Twinion. On MedievaLands, Twinion and Yserbius run side by side on the same server. Although the two games have different dungeons, they share the same Tavern, Guilds, and Bulletin Boards. You can even switch the game you are playing without logging out.
You are receiving this email because you signed up for beta testing in the 'Account' screen of MedievaLands. If you are busy at the moment and can't join, I completely understand. This is the only email I will be sending about Twinion testing, so please don't worry that I will be regularly spamming you.
If you have also signed up to receive emails about new features, you can expect an email on March 27 regarding the public release of Twinion. On that day - which is the one-year anniversary of the release of the original MedievaLands server, I will be inviting every player to check out the game. My hope is through your help in bug testing, we will have ironed out any issues in the game before then.
Take care, friend. All my absolute best,
By ZaneDubya on Feb 28, 2020
Hail friends, and happy Leap Year Eve! We are one week out the Twinion public test, and four weeks from the Twinion grand release. I have watched as the first testers in Twinion have slowly been solving that dungeon. It's been exciting to follow your progress, and I have appreciated the opportunity to fix the game stopping bugs that arose in your path.
On my end I have whittled away various bug reports and feature requests. These are all tracked on the Github repository. I added a link to the Github to the MedievaLands website, which you will see in the top menu bar, and under the hamburger menu on mobile devices.
As I add these small features and squash those bugs, I can't help but wonder if I'm missing the forest for the trees. I have been hard at work polishing up the original experience, and many of you have told me that MedievaLands is much more fun to play than the original game. And that's good to hear! But is there something fundamentally unsatisfying about playing Yserbius that my work on MedievaLands hasn't begun to address?
It's instructive to look back at the contemporaneous reviews of Yserbius. I added a handful of these to the MedievaLands website under the 'Press' page. While all reviews of Yserbius are generally positive, focusing on how much fun it is to play with friends, there are negative notes as well.
Bernie Yee's 1994 review of the Yserbius boxed set, published in Computer Gaming World, discusses issues with the game's mechanics. In that review, Yee notes that Yserbius's "minimalistic game design" was essentially the same as 1985's The Bard's Tale. He touches on NPC interactions (none) and character progression (very little nuance compared to other contemporary RPGs). Yee points out that Combat is "simple" with no tactical nuance. "Combat becomes tedious after a while," he write, "between the random encounters and set piece 'monster squares' that refill with enemies to fight over and over."
Yee has the right of it. Yserbius is a great game - it obviously made an impact on me and if you're playing MedievaLands, it made an impact on you too. But it's also clear that Yserbius feels less than fully engaging.
I felt this as I was working on the original MedievaLands release. At that time I was focused on recreating the exact original Yserbius experience. It turned out great, but my focus on the original game meant that MedievaLands kept everything from the original game's design, both good and bad. Now, as I work on adding Twinion, this second full pass through the game's mechanics has given me the experience to consider what is keeping Yserbius from being a more engaging game.
The Core Loop and a Lack of Engagement
The problem with engagement in Yserbius arises from the game's Core Loop. By "Core Loop", I mean the mode of the game that takes up the most of both the game's design and the player's moment-to-moment focus. This is different from the overarching goal of Yserbius, which I would describe as "explore a dungeon with friends, solve puzzles, and grow in strength by defeating monsters so you can defeat a final tough boss."
The Core Loop - the thing that demands the player's attention and which the game's design focuses upon - is the combat. And not a combat from beginning to end, but rather a single round of combat: the player chooses an action, the game runs the combat simulation and supplies feedback to the player, and the player adjusts their mental model of the game based on that feedback.
I don't think the choices the player has, nor the feedback the game provides, are really that engaging.
Player Choice and the Lack of Balance
I discussed the issue with the player choice previously in news posts (see 'Is Yserbius a class based game') and we have carried on that conversation by talking about why the various classes, in their current implementations, aren't much fun to play. Yserbius suffers from a lack of balance, in that by the mid game, the player does not have many meaningful choices to make. There is objectively one best character type to play, one best set of equipment, and one best action to take in combat: physical attacks most of the time, after an opening round of shields, buffs, and occasionally debuffs. Because there is a best action to take at every single step, the possibility space for player actions within the game is not very broad. And if there's no possibility space to explore, the game is not very engaging for a player - they are just there to repeat the same action over and over.
So how could we fix this? I think a fix would arise from balancing the current set of player choices, and by adding new choices where the current game is most restrictive. To balance the current set of player choices, we will have to make more of these choices viable. For example, we could make the Wizards and Rangers more valuable by making their ability to contribute to combat more equal to that of Knights and Barbarians. We could do the same thing to the game's itemization by adding more options for player equipment, each with different advantages and disadvantages. I've recently rewritten the game's item framework that can handle much of this, and hope to introduce some of these new items soon. As for adding new choices - this would be more difficult, but I would like to see classes that really do have to focus on physical attacks - like Barbarians - have more options to play with each round. Perhaps there should be multiple kinds of physical attacks. Reginald had some ideas on this subject recently - perhaps we could have attacks that damage multiple enemies, or attacks that focus on one enemy, or attacks that apply debuffs to enemies. Yserbius has many skills - can we make more of these viable options in combat.
Feedback and Juice
The second issue with the core game loop is the poor way which the game gives players feedback. To be more clear: almost all the results of combat scroll past you in a very small text window. In large combats, it is hard to see what has happened. This is frustrating. I hamfistedly tacked some feedback on to the existing engine last year, with the player health bars and damage/healing numbers appearing over the player tiles. Honestly, this is not enough. It's still far too difficult to see who is attacking you and what your character is doing.
There's a game design term for improving game feedback - it's called "Juice". Check out the talk "Juice it or lose it" on Youtube for an overview and demonstration of the subject. In short, Juice is a set of graphical effects that give the player the impression that their actions are making a meaningful impact on the game's state. Yserbius was designed in an era before programmers and artists started to focus on juicy feedback, and when there was not really enough computational power to show the juice a designer might want to include.
I think there is are many ways we could improve the feedback in the combat mode. We could make the user interface less static, allowing the user interface controls that represent the combatants to move around and actually hit each other (this would not change the current combat tactical options - players and monsters would still strike at each other from two rows of six tiles each). We could add more particle effects, beyond just the damage numbers. We could increase the size of the text box, similar to how I've increased the amount of text visible in the Tavern. And we could move more of the combat action out of the tiny text box and into the visible game world.
I honestly don't know how much of this I'll be able to add. I don't know which of these ideas will turn out to be easy to design and which will be easy to implement. But I want you to know that I am thinking about how to fundamentally improve Yserbius, and make it not just a fun remake of a game we played thirty years ago, but a game that is fun and relevant for today's players as well.
Until next time, friends. Take care down there!
By ZaneDubya on Feb 26, 2020
Hail Friends! We are nine days away from a public test period for Twinion. In the meantime, I've been working steadily on some real improvements to Yserbius. Here are the patch notes for the past two weeks:
By ZaneDubya on Feb 14, 2020
Two opponents square off in the dungeons of Yserbius. Whether this is a new adventurer taking on a wolf in the Mines, a grizzled veteran engaging the fiends in the Wind Knights Tomb, or two heroes duelling in the Dungeon Entrance, the same formulas determine what happens in each combat round.
But I'm getting ahead of myself. At the outset, it's important to note that combat in Yserbius is divided into rounds. Each round, every combatant that is not paralyzed or petrified will choose an action. Actions can be physical attacks, or the use of a spell, skill, or item. Players generally get to choose what action to take, unless Controlled, in which case they will choose a random ally to attack with a physical attack. Monsters will either make a physical attack or cast a spell.
But again, I'm getting ahead of myself. There are two types of combatants in Yserbius: Player Characters (Characters), and Monster Stacks (Monsters). The basic Character attributes are Strength, Defense, Agility, Initiative, and Dexterity, which are defined in part by the Player's choice of Race and Guild for that character, in part by the Player's choice in how to allocate statistic improvement points granted on level up, and finally in part by visiting various stat boosting places throughout the dungeon. The basic Monster attributes are defined by a Monster Template, which has Strength, Defense, Initiative, MagicalDefense, and Dexterity. All monsters built from a template will have the same exact stats. Note that two monsters in the same map may have the same name, but will be built from different templates!
Now that we know the attributes in play, we can walk through the mechanics to determine what happens when a physical attack is in play.
The first thing that is determined is whether attacker hits the defender. The game calculates a "HitDiff", which is equal to the Attacker's Strength minus the Defender's Defense, plus 14, divided by 2, and clamped to a range of 0-14.
The final HitDiff value is used to select one of 15 rows in the HitResultTable. Each row has a different chance of three results occuring: Miss, Hit, or CriticalHit. Row 0 (used when the Defender's Defense value is +14 or higher than the Attacker's Strength value) always misses. Row 14 (the Attacker's Strength is +14 or higher than the Defender's Defense value) will hit 60% of the time, and CriticalHit 40% of the time. So having a high Strength will help you not just hit more often, but critical hit more often!
If the result in the HitResultTable was a Miss, the physical attack simulation ends here, and the combatant will be informed of their ineffective attack. Otherwise, we continue to damage calculation!
Now we calculate Base Damage, which is equal to the Dexterity of the Attacker minus the "Armor" value of the Defender. Armor for Characters comes from equipped items and skills. Armor for Monsters comes from the Template (ranging from 0 to 200 in Yserbius). If the base damage is equal to or less than zero, then the attack has been Parried, the attack simulation ends, and the combatant will be informed of the Parry.
Now we randomize the Damage. Characters will have a randomized damage between 75-125 percent of the base damage. A single Monster will have the same randomized damage range. However, if a Monster's template allows multiple attacks, and there are multiple monsters left in the Stack, then the monster can attack more times! Each additional attack adds a random value between 0-50 percent of the base damage value. The maximum number of additional attacks in the Yserbius monster template dataset is 2.
If the attacker is an Undead type monster and the defender is a Character with a protection against undead buff, the damage will now be reduced by half, three quarters, or seven eighths, depending on the strength of the defense buff.
If the attacker is a monster, then it will check its template to see if it should inflict a debuff state if it hits. Monster attacks may inflict any one or more of the five debuff states (poison, petrify, paralyze, backfire, and control).
Finally, if the attack is a critical hit (as determined by the HitResultTable), the game will choose a random critical hit type from the CriticalHitTable. Each critical hit type has a damage multiplier, and will inflict a reduction to the Defender's defense and initiative values.
Well, that's it for calculation of physical attacks. If you have any questions about how this all works, or questions about other mechanics, please let me know!