1. BitCraft Online
  2. News

BitCraft Online News

BitCraft: Early Access - Day 2 Update: The Server Saga

[h2]Hi everyone,[/h2][p][/p][p]I'd like to start by saying thank you to everyone who has been sticking with us through these performance issues, both on the server and on the client. We have been working around the clock for the past two days to get them resolved, and we've been making some excellent progress.[/p][p]In this update, I'd like to focus on server performance. Today you should notice dramatically better server performance as we have finally addressed several major issues. There are still client performance issues (bad frame rate, memory leaks, etc) but we're making substantial progress there and hopefully we can roll out fixes for those today too.[/p][p]I would like to take you all through the four major server performance issues that we identified and fixed this morning so you all can understand what on earth has been going on and why server performance has been, frankly, garbage, and why we didn't catch these problems before EA release.[/p][p][/p][h3]#1 - The Tease[/h3][p]When the game went live, right off the bat we saw that the server was scanning tens or even hundreds of millions of rows per second evaluating what we call "one-off" or "remote" queries. Remote queries don't subscribe to data, they only pull down the data once. It turns out that we were missing an optimization for two specific queries that we were running when players opened either the trade finder window or the waystone window. Two changes happened between the demo and EA that made this worse. First, the number of entities in each region increased by a factor of 2 and second, we added the trade finder window to the tutorial. Since our internal testing bots don't open UI or complete the tutorial, we did not see this in our testing. Fixing this improved performance, but did not substantially fix our issues.[/p][p][/p][h3]#2 - The Freeze[/h3][p]The next major issue we (and you) noticed were huge minute-long freezes on the server. Awful. Eventually we determined that this only happened if we had the "mob monitor" running. The mob monitor is the "brain" of all the creatures in the world. It's the AI director. At some point while reviewing the logs we found that a mob monitor crash and restart corresponded with the freezes. We fixed the mob monitor crash and the freezing went away.[/p][p][/p][h3]#3 - The Disease[/h3][p]After we fixed the freeze we found that performance was still not great on the server. Players were reporting substantial lag, and worse, they were reporting that they were disconnecting from the server or had problems connecting. Additionally after a couple hours each region server would start to get what we called "Region 8 Disease". The first symptom of Region 8 Disease was elevated reducer execution time, despite no apparent additional workload on the server. After that many clients would disconnect and reducer execution time got even worse and remained very bad. The only resolution was to restart the server, which would resolve the issue temporarily. Clients disconnecting seemed to both cause the issue and be caused by the issue.[/p][p]We had assumed that the freeze was somehow caused by the monitor resubscribing to all the data, but after some experimentation and careful review of timestamps we found that the freeze issue was actually happening when the mob monitor disconnected. Eventually we figured out that when clients were disconnecting we would print an enormous number of logs saying that we couldn't deliver messages to them. The number of logs was proportional to the amount of messages, so the more players in the game the more logs we'd be printing. It turns out that although these logs were not on the reducer code path, they would hold a lock on stdout causing a small amount of logging on the reducer code path to get gummed up waiting on locks, causing reducer execution time to skyrocket (which caused more disconnections, which caused more logging, etc.)[/p][p][/p][h3]#4 - The Tragedies[/h3][p]Finally we come to a set of tragedies which led to the biggest performance impact. In the last days before the release we ran bot tests on the same physical machines as we'd be launching on. When we ran our latest code version we actually saw the freeze happening. When we rolled back the version, we no longer saw the freeze or saw it much less often, but we now believe this was simply due to random chance. We therefore tragically decided to ship an older version with early access.[/p][p]The reason this was so tragic is that in the newest version we had made several query engine optimizations to improve performance of operations that the bots did not do, but that real players did (e.g. lots of crafting).[/p][p]Last night, given our deeper understanding of the freeze and the disease, we chose to roll out the newest version, and we saw a dramatic improvement in server-side performance.[/p][p]If you're reading this and you were disappointed with the server performance yesterday, I ask that you please give the game another shot either now, or after we fix the client-side performance and bugs. Not everything is solved, but things are a lot better. I hope this provides better insight into what was going wrong and what we're doing to resolve the issues as they arise.


[/p]

BitCraft Early Access - Day 1 Update from the team

[p]Hey Everyone,[/p][p]First off, Thank you to all of you who have supported and been playing BitCraft. We are very happy to see many people enjoying the game despite the hiccups of the first day of launch.[/p][p]I wanted to give an update for more transparency on how we are planning to continue improving the game over the coming days.[/p][p]The team has been super hard at work squashing issues and keeping everything running as smoothly as possible[/p][p]Today (Sunday June 22nd) - for the subset of the team which is online/on-call today our primary focus is:[/p]
  • [p]Continue to debug the server issues that are resulting in sporadic poor performance (this manifests in many other player facing issues)[/p]
  • [p]Fix the issue causing disconnections[/p]
  • [p]Fix issues with the login server (Error 503) making it hard to log back in[/p]
  • [p]Fix simple content issues (such as the town banks not being movable or some achievements being incorrect) [/p]
[p](and of course keep communicating with all of you about how things are going) [/p][p][/p][p][/p][p]This week (6/23-6/27) - with the whole team in the office we can ramp up tackling a wider array of bugs and improvements:[/p]
  • [p]Issues with onboarding (belt equip quest not completing, cart knowledge not being awarded)[/p]
  • [p]Client Performance (Memory leak, client FPS)[/p]
  • [p]Bugs (Cannot target things while in water, getting stuck "in combat", losing travel energy when teleporting doesn't complete)[/p]
  • [p]UX Improvements (being able to mute players without reporting, annoying to interact with dropped items under resources)[/p]
  • [p]Balancing (cost refined items for higher tier settlement buildings, traveler voucher costs)[/p]
[p]I've had some time today to read through a lot of player feedback and we are starting to work on some larger improvements based on this feedback and also data from all the progress you've made.[/p][p]One major thing is the progression of player made towns. We believe that right now it's too hard for player made towns to be competitive with the ruined towns and that should change. We are looking into some changes that would make it easier for T2 settlements to be able to get setup more quickly to attract players out of the ruined towns. Primarily this comes down to access to travelers, a bank and a market. We'll be looking at making some balance changes to these to nudge this in the right direction in the coming days.[/p][p]We appreciate your continued patience and enthusiasm as we continue to make BitCraft into the awesome game we envision! [/p][p]- Minch (Game Director) and the BitCraft Team[/p]

New sandbox MMORPG with one giant, shared world gets surprise early Steam launch

The shared-world experience of MMORPGs such as World of Warcraft, FF14, Runescape, and Guild Wars 2 is what makes them truly special. Even if you're someone who prefers to quest solo, seeing other players going about their daily business and living their lives around you brings a magical spark that can never be replicated by computer-controlled NPCs. Newcomer Bitcraft Online is taking things a step further. Pitched as a 'true single-world MMORPG,' developer Clockwork Laboratories has been playtesting Bitcraft Online since 2022, and has now launched it into early access on Steam even earlier than previously planned.


Read the rest of the story...


RELATED LINKS:

Upcoming MMO BitCraft Online has one, persistent world and a snug atmosphere

BitCraft Online: launched into Early Access!

[p]Hello everyone, [/p][p]We are very excited to announce that BitCraft Online has officially launched into Early Access! We look forward to seeing you all in-game in the world of Starfell. Thank you for joining us on this journey. We hope you'll continue with us on the road to launch.


From everyone at the Clockwork Labs, thank you all.[/p]

BitCraft Online: Will launch Saturday June 21st

[p]Hello everyone,[/p][p]First of all I would like to apologize for the inconvenience related to launch date changes. We are doing our best given the stressful situation. That being said, I have some good news.
[/p][p]Steam just approved our build and we have run our pre-release checklists.
[/p][p]We have decided to launch BitCraft Online on Saturday June 21st 9AM EDT / 3PM CET (NOT June 27th). This is one day after our originally planned date, but hopefully still enough time for players to plan and prep.[/p][p]For context, we were caught between several terrible choices on the BitCraft launch timing and we needed to pick the least bad option. Our options were:[/p]
  • [p]Launch on June 27th - This was always a horrible date for the launch as it is during the Steam Summer Sale. However we needed to give Steam a week in case there were further issues with the approval. Now that we have our approval, proceeding with this date would essentially be suicide as it would not give us any opportunity to reach the front page of Steam or be picked up in the Steam algorithm. After 7 years of development we don't think this would give BitCraft a fair shot.,[/p]
  • [p]Move the release to Tuesday June 24th - This is still close to the sale, but it's also in the middle of the work week and many people who requested time off from work to play on launch day (and then subsequently moved their time off to the 27th) would be rightfully furious that they still wouldn't be able to play on launch day.,[/p]
  • [p]Move the release to Saturday June 21st - In this case, most people will be able to play on launch day as it's a weekend, even the people who requested time off from work on the 27th. The major downside being that we're changing the date yet again, which is understandably frustrating, but at least you'll be able to play BitCraft this weekend.,
    [/p]
[p]We believe the last option is clearly the best option for the game.
[/p][p]Thank you for your patience. It's been a very dynamic situation, and at the end of the day we want to do what is best for the long term health of the game and the community.
[/p][p]I hope you all enjoy our game.

Edit CL-Lutra: Time 9AM EDT / 3PM CET [/p]