By ZaneDubya on Jan 9, 2022
This update to MedievaLands includes many behind the scenes changes, and one very small change to the Soldiers Quarters in Yserbius. The quick summary is that I have changed a number of systems but this should not change how the game works or looks - so if you see any oddness as you play this version, please let me know so I can fix any bugs I have introduced.
Here are the five changes I have made in the past two weeks:
First, I have spent ten hours moving all the style and color code into a single place in the source code. My idea here is that if I ever want to change the color scheme of the game - for example, to make it more uniform throughout - it will be much easier to make that happen. (However, I have not made any changes to the actual colors or styles yet - so if you see some strange looking fonts or a bizarrely colored window, let me know and I will return it to how it used to look.)
Second, I have spent another ten hours moving several hundred text strings out of the source code and into a localization database. My goal with this change is to make it easier to edit the text in the game. I estimate that I have another several hundred text strings left to go, so this is very much in progress. (However, I have not made any changes yet to the text strings. If you see some bizarre out of place text - or if you see a "LOC_ERR" message, meaning that a localization string is missing, please let me know.)
Third, I have combined the point-of-view renderers for Yserbius and Twinion to a single generic renderer. Less code is always better, and as a side benefit Yserbius could now potentially use all the graphical resources from Twinion - and vice versa. (However, I have not made any changes to the textures in either game. If you see some incorrect walls, doors, or out of place objects, please let me know and I will fix those!)
Fourth, I have rewritten the compression and decompression code. In general, resources should be packed more tightly and the game will no longer allocate a byte buffer for every call to the decompression routine. This should be unnoticeable to players - but you can rest assured that the MedievaLands engine is in the best shape ever.
Finally, I have created a new map data format, and translated all the maps currently in the game to the new format. The new format is more explicit in how it invokes map script events, which is very exciting from a scripting perspective. Just as exciting from the designer perspective, I can now edit the map geometry and create my own maps. But I have not done any of that yet - except for one small change to the Soldiers Quarters map on level one of the dungeon of Yserbius: I have removed the lock pick requirement from the back door in that map. This change is meant to improve the player experience for new players: it has always struck me as odd that the requirement to open the shortcut door in the Soldiers Quarters was the same as the door at the very end of the level which leads to the same space. From my perspective, you should be rewarded for traversing the entire level - not frustrated with a locked door after a punishing trip. The shortcut remains locked - you'll continue to need a lockpick or the lockpicking skill to open that door.
In addition to all these items, I have fixed two rare bugs that could cause the client to disconnect: one where you tried to use a skill when dead, and one where you died while teleporting between maps. These changes firm up the game's stability - MedievaLands is in a really good place now, and continues to improve with every update.
Until next time, take care, and keep in touch.
By ZaneDubya on Sept 14, 2021
In all seriousness, it has been almost exactly a year since I have had any meaningful updates to share. I am pleased as Punch to break the dry spell and bring some good news back to you. Today I am going to talk about a brand new way to interact with Yserbius. Then I am going to share the latest bug fixes, and give kudos to our reporting adventurers. As brief preface, this is a 'breaking update' in that it will require people with Clients older than last month's minor update to download the client from the website. I always recommend that you delete all old copies of the client before downloading the new one. With that out of the way ... let's dive into the update!
The big change to report is a complete overhaul of the user interface for exploration and combat within the dungeon. This update addresses one of the major problems I have had in introducing Yserbius to new players: the user interface. The Yserbius UI was amazing for 1992, and it is a joy to return to if you played the game back then. But for new players the dungeon interface doesn't make much sense. It's interesting to compare the first few screens you see when you boot up the game to the interface you are presented with when you enter the dungeon. The gallery and character creation screens all have very clear button, text input, and text display controls. They are early renditions of the exact same controls we see in our modern applications for desktops thirty years on. By comparison, when you enter the dungeon, the user interface design principles shift and what you are doing and what you are interacting with is somewhat obscured.
Of course, it is not fair or worthwhile to judge Yserbius by modern UI standards, and I'm not going to do that. Today we have a shared understanding of the metaphors we use to indicate interactivity. Yserbius simply came about before many of these were explored. For that reason, the UI sometimes doesn't make sense to someone who never played this old game.
You have to admit that it is hard to look at a game we played in the early nineties with fresh eyes. With that in mind, I occasionally bring in friends and family as testers. The first time I ever showed MedievaLands to one of these newbies, they made a character, and figured out that you could click on the volcano... and then they just sat there for 15 seconds before asking what to do next. I asked them to describe what they thought the user interface of the game was trying to convey. They said: "I think this is the next character creation screen. I see what I think is my character, but I don't know what to do with it. I see a bunch of items in my bag but I don't know what to do with them. There's a big black-orange blur and I don't know what that is." That big orange and black blur was the character's point of view. The "bunch of items in my bag" was a description of the icons that open up subviews: the item chest, the quest item bag, the trash can, the map, the spell book, and so on).
This new UI is meant to be more understandable for new players by relying on commonly understood modern user interface principles that advertise to the player how they may explore and interact with the game. Buttons are very clearly buttons. I added health and mana point bars to all party members and enemy monsters. I also chose to prioritize the player action of moving through the dungeon over the action of changing your equipment, since you do much more moving than equipping (particularly in the original cut of the game, without the added random magic item system). Finally, this new user interface increases the amount of text you can see on screen by 50 percent! All told, I think this is a huge update that will make the game easier to play for new players, but which is still familiar enough to returning players. Please let me know if you have any suggestions for further improvements.
Next, I'll note the issues reported by our hardiest denizens of the dungeon, the bug catchers.
That's all for now. What a year it has been. My hope is that this coming year has much more MedievaLands work to report!
Until next time, take care, and keep in touch.
By ZaneDubya on Sept 15, 2020
Hail friends! I'd like to share a change to the critical hit mechanics, a name change to the Paralyze debuff, and some other bug fixes that have been added to the game in the past week. Let's get into it!
First off, a big change: the critical hit damage mechanic for physical attacks has been rescaled. In the original game, critical hit damage could do up to 800 percent of your base dexterity damage. I had previously reduced this to 500 percent in the release of Yserbius on MedievaLands, and now I am reducing it further. The issue posed by critical hits is that they are incredibly spikey: even at 500 percent, damage done by players and monsters could easily exceed the total hit points of a stack of monsters or a player.
The new critical hit rescale has reduced critical hits to 150% of the maximum base damage. The goal of this change is to make combat depend more on your use of spells and skills, and less on a chance of landing a critical hit in before your enemies do. I've heard of encouraging comments from players who have already been testing the new critical hit function, and I look forward to hearing from you as well!
Second, based on reports from the community, it seemed like some players have "lost" attribute points and therefore not been able to max out their stats. I conducted some in-depth analytics of all the player characters in the game, and I found that fourteen characters had lost attribute points (and some had gained unusable extra attribute points)! These characters have all been corrected, and except in one case where I had to remove one extra point of initiative, no character has lost any points.
Third, I have renamed the "Paralyze" status effect to "Incapacitate". I did this in response to some justifiable confusion from players: the "Petrify" and "Paralyze" status effects had the same name, same effect, and very similar dictionary meaning in English. The new "incapacitate" status effect has the same game effect as Paralyze, but the new name will help differentiate it from Petrify (which has not been changed).
Those are the big changes! Here are some smaller bug fixes I have also recently included:
That's everything from this end. I am actively watching and responding to posts in the in-game forums. Let me know what you're thinking - and if you have any suggestions for new features!
Take care, and keep in touch.
By ZaneDubya on Aug 26, 2020
Hail friends! This month I have added a brand new Treasure System for Yserbius and Twinion, and I am also preparing to officially launch my remake of Twinion on Monday, August 31. I hope you will join us for the launch!
The Treasure System is a revamp of the items in Yserbius and Twinion. The original games each had a total of 252 items. The new Treasure System adds seven million new items while keeping almost all of the items from the original games. Most of the new items are weapons, pieces of armor, rings, and amulets which have never been seen before in MedievaLands. These items are slightly to somewhat more powerful than the old Yserbius items. And you will still find all the old quest items and the very best drops from the original game exactly where you would expect to find them: the Flex Sword, Barbarian Axe, Infinite Armor, and other favorites mentioned in FAQ from the early '90s can still be found in their old locations.
As you venture deeper into the dungeon, you will find items with new modifiers that will allow you to create a unique play style. For example, if you intend to take on King Cleowyn's palace, where spirits, skeletons, and ghosts linger, you will want to equip items that do more damage specifically to the undead. Wizards will enjoy items that make spells more damaging. Clerics may want to search for items that improve healing power. Rangers and rogues will want items that make monsters less likely to attack them. This is only scratching the surface: there are over twenty 20 new modifier types and a total of 80 new modifiers in all.
I want to recognize Reginald in this update, as he was a force of design behind the new Treasure System. Readers of the MedievaLands forums will recognize Reginald's name from his posts in the RolePlay and Game Mechanics boards. Those posts include the base items that underpin the new Treasure System. Reginald also worked with me to balance power levels of the new item modifiers, and also wrote descriptions for the quest items in Yserbius. I am proud to have worked with him on this upgrade to the original games.
The new Treasure System is automatically enabled for all players. You will see a few new items for sale in the Keep (you will also see a new Bank in the keep, which will expand your character's inventory by 50 percent). But you will find even better loot in the dungeon. As you fight monsters, they will drop more items you have never seen before. you will start to see Magic quality items, and the truly lucky among us will find some of the 64 super-powerful Unique quality items. Players who have helped test the new Treasure have enjoyed the variety. I want to extend my thanks in particular to Bobi and Jeff, who have worked to put the system through its paces in the past weeks.
Aside from the new Treasure System, I have been hard at work finishing up Twinion and polishing the game experience. From July 20 to August 26, I closed 61 issues (each issue is a fixed bug, new feature, or added polish) and changed or added 7,209 lines of code. My tempo was about 190 lines of code and 1.6 issues per day. That is a very respectable pace. Some of the biggest features I have added include:
Soon I will sit down and write out how the new Treasure System works, what principles guided me as I designed it, and what I hoped to achieve by adding it to the game. In the meantime, please give it a go and let me know what you think.
I look forward to hearing from you. Take care and keep in touch!
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.