Weekly Dev Log for October 18th, 2021

Weekly Dev Log for October 18th, 2021

Hello everyone, and welcome to the Weekly Dev Log for October 18th, 2021, detailing all the changes that have happened since October 11th, 2021. Note: Devs that don’t appear in the weekly log are not necessarily away or not doing work, but may be working on things currently not announced or backend work that doesn’t need to be detailed.

Steam Issues

As you probably are aware by now, Tower Unite is currently experiencing issues with EXP, Item Transactions, and Achievements due to Steam’s backend systems being unstable and unreliable.

We are currently working on migrating away from using Steam Inventory for items, as well as tracking EXP and Achievement unlocks on our own systems, instead of relying on the Steam Stats and Steam Achievements systems.

As you can probably imagine, this is going to take some time, and we’re unable to offer an ETA of when we’ll be finished, but working on it is our top priority.

Background

Steam offers developers various tools to use for developing their games: Achievements, Stats, Inventory, Networking, Workshop, and so much more. These tools are great to have for many developers, as they free up the developer from having to spend time to make these backend systems themselves, and instead allow the developer to focus on making the game they want to make.

When Tower Unite began development, we decided to use Steam Inventory for storing users’ items, Steam Stats for storing users’ EXP and other stats, along with utilizing Steam Achievements. Steam provides these tools to developers in the form of an API, and using this API we can tell Steam to do things and Steam will do them. We have our own backend system called the AGC that interfaces with these Steam APIs.

As many gamers who use Steam are aware, on Tuesdays, Valve performs maintenance on Steam’s backend servers. These maintenances can last anywhere from two minutes to several hours, and when they are happening most of Steam is often unavailable for users.

On Tuesday, October 12th, 2021, upon the completion of Steam’s maintenance, we got a couple reports from users stating that they were having issues obtaining items. As we typically get some of these reports on a Tuesday, we didn’t think much of it.

The next day, Wednesday, October 13th, 2021, we released the Halloween update, and with the influx of users that our holiday events bring, we immediately began observing issues across the board. It is important to note that, for the Halloween update, none of our backend code that interfaced with Steam was changed at all. Code that worked fine for months suddenly stopped functioning correctly.

What’s happening?

Steam’s API, like many APIs, uses HTTP Status Codes to denote if a particular action was successful or not. An HTTP Status Code of 200 indicates to our backend system that the action we asked Steam to take has occurred successfully, while an HTTP status code of 500 indicates to us that Steam is having issues with their servers.

Our backend system, the AGC, handles these errors. However, since the Steam maintenance on October 12th, our AGC is telling Steam to do actions, and Steam responds that it has performed those actions, along with a HTTP status code of 200, but, in actuality, it either hasn’t done the action, or the action ends up being delayed by hours.

Our systems cannot function properly when the API we trust to perform actions for us is not being truthful about what it is actually doing. Due to this, anytime we ask Steam to give a user an item, or take an item away, give a user EXP, or grant an achievement, Steam isn’t cooperating with us.

It’s not only our backend systems that are being affected by this. When a user boots up Tower Unite and looks at their inventory, their game client is using the Steam API directly to get their Steam Inventory information. Steam is only sending some users part of their inventory, or none of it at all, leading the user to believe that they have lost all their items.

What are we doing about it?

Last Friday, October 15th, 2021, at around noon, we sent a support ticket to Valve using their dedicated developer panel. As of the time of this posting, we have not received any response.

Since the API is currently unreliable and unstable, and given the fact that it has a tendency to go down without any developer support, we have no choice but to move all Tower Unite users’ inventories off of Steam Inventory, and onto our own systems. In addition, we can no longer rely on Steam accurately updating user’s EXP or granting a user’s achievements, so we’re going to have to start tracking that on our end as well. If it sounds like a lot of work, it is, but it’s now our top priority.

We’re just as frustrated as you are about the current situation, and this will probably lead to a delay to what we were planning for the second phase of the Halloween Events, but it’s work that we have to do for the stability of Tower Unite.

So, to reiterate, our current plan is as follows:

  • Migrate user stats off of Steam Stats to our own stat system.
  • Migrate tracking of achievements onto our own systems.
  • Migrate user inventories off of Steam Inventory to our own inventory system.

There is an upside to doing all of this on our own: it should hopefully make transactions and item purchases faster, while also making it easier for us to work on the Community Condos feature, which would require shared inventories.

We’re hopeful that sometime this week, Valve will issue a fix for this issue, allowing for smoother sailing while we create the new backend systems required for handling this data.

We’ll continue to keep you all posted on our status page, which can be found here.

August / September 2021 Survey Results!

Thank you again to everyone who participated in our survey. We had a whopping 6,700+ responses!

You can view the results of this survey here.

October 2021 Halloween Condo Contest BEGINS!

As we’ve done in the past, the theme for October’s contest is Halloween!

Feel free to interpret that how you like, whether that means making a haunted forest maze, a creepy basement, a chill Halloween party, or anything else, so long as it follows the rules and reasonably suits the theme.

The contest ends on October 27th, 2021, at 11:59 PM CT.

View the contest rules here!

Accessibility Suggestions

We’ve created a forum post asking the community for suggestions on how we can improve gameplay for players with certain conditions such as colorblindness, dyslexia, or anything else that might affect a players ability to use the standard presentation and controls of the game.

If you have any ideas or suggestions, and possible solutions on how to solve a particular issue, please check out the forum post here.

Shooting Gallery Ride

@Johanna finished up the first art pass on the shooting gallery ride.

@Wheezwer continued working on paintings for the shooting gallery ride.

Shooting Gallery Ride




Minigolf: Cove

@Johanna continued working on an art pass to Minigolf: Cove, adding course walls, and updating textures, lighting, and foliage.

Minigolf: Cove Art Pass WIP

Little Crusaders: New Map

@Lifeless continued working on the new map for Little Crusaders.

Little Crusaders: New Map WIP

Miscellany

@Caboose700 is working with the other developers on migrating user information off of Steam.

@JJosh continued working on various NPCs.

@macdguy continued working on coding the shooting gallery ride, getting the track logic completed and planning gameplay and visual events.

@madmijk continued working on adding MIDI support.

@Sketchman finished working on Gizmo stuff, and is working with other developers on migrating user information off of Steam.

@Will continued working on sounds for the shooting gallery ride, while also working on new music for Ball Race and Accelerate.

Wrap It Up

That about covers everything that happened since October 11th, 2021 at PixelTail Games.


Join our Discord for development updates and community fun!
https://discord.gg/pixeltail
We love awesome people like you!

We’re also active on Twitter!
https://twitter.com/PixelTailGames

Follow our developments on our Trello in near real-time:
https://trello.com/b/6BwRMiPw/tower-unite-roadmap

Take a peek at what’s being worked on every week in our weekly dev logs! There’s bound to be something interesting every week!
https://forums.pixeltailgames.com/c/devupdates/weekly-dev-logs

Please report bugs & submit suggestions on our forums. We’re active everyday & here to help.
For bug reports: https://forums.pixeltailgames.com/c/bug-report/18
For suggestions: https://forums.pixeltailgames.com/c/suggestions/7

Support PixelTail Games with Ko-Fi

Support PixelTail Games on Patreon

Checkout Tower Unite Merch on Redbubble

<3 PixelTail Games

30 Likes

Thank you all for your continued transparency and hard work. It sucks that this had to happen right at the start of this event of all times, but it was inevitable I suppose. At least things will hopefully be much more stable for the future after this is all said and done!

9 Likes

Does anybody know if any other Steam games have been affected by similar issues?

On the other hand, could another advantage of moving away from Steam’s services be the possibility of making TU available in other online stores (that do not dispense Steam licences), including console ecosystems?

4 Likes

I’ve heard Team Fortress 2 is going through similar issues right now

7 Likes

This explanation and breakdown is a prime example of good communication and transparency. Such unfortunate timing, I hope the transition and development isn’t too cumbersome for the team.

It’s a shame because it is so cool that Steam offers these tools for developers at no charge and Pixeltail has made such good use of them, but its proven itself unreliable in the past and this is the worst I can recall. Can you imagine if this happened as TU exited Early Access and started actually promoting? It’d get review bombed and leave a terrible first impression for many.

Keep up the incredible work! The new Halloween items and cosmetics are absolutely fantastic!

7 Likes

This is unlikely because they will still heavily rely on Steam Workshop & Steam Achievements (though only to sync them to profiles, as they will store Achievements locally on their own systems after the migration). With Workshop alone, there’s no chance it will be ported to other stores or even consoles for that matter, not to mention the various minigames that will need to be reworked for console (i.e. Typing Derby).

We’ve talked a bit about consoles but we have nothing to currently announce. You are right that Typing Derby would have to be different for consoles.

Having our own backend system though would make consoles more likely, but workshop systems would not be available on any consoles.

7 Likes

Would it not be possible for Pixeltail to roll their own Workshop (itself quite the endeavour, admittedly) and use Steam’s UI as another message source? The rest of ecosystems without any sort of user mod DB would have to rely solely on TU’s interface.

We’re not going to do that. Steam Workshop has it’s problems, but we’re comfortable using it rather than rolling our own for user generated content.

4 Likes

Caboose has said he would rather not since it would require hosting every single workshop item on their own servers.

1 Like

I think the last time I saw an environment in TU that I thought looked this good it was some ye ol’ screenshots Europa and Neptune from Odyssey.

New Ball Race music :eyes:

I know it’s early WIP, but this walkway looks a bit tight. Seems like it’d seem a little claustrophobic, especially as dragon because of the new jump heights for knights, not having a lot of wiggle room to the left and right make this seem like the spot with the red line be a really dangerous spot to walk through. Also the spots on these boxes seem like they’d be kinda easy to camp now that roaring can’t go through objects. Seems like you could hide/camp in the blue or crouch in the cyan to avoid getting roared, then jump up to the green to jump over the dragons bite and onto its back to press the button. This whole area seems a lil spooky for the dragon.

2 Likes

what…

2 Likes

Sorry if I’m being a bit daft here, but couldn’t you just plug a USB keyboard into any current gen console with no driver issue? Perhaps connecting a keyboard just to play a minigame is too much a hassle?, no sarcasm intended.

3 Likes

I know it’s early WIP, but this walkway looks a bit tight. Seems like it’d seem a little claustrophobic, especially as dragon because of the new jump heights for knights, not having a lot of wiggle room to the left and right make this seem like the spot with the red line be a really dangerous spot to walk through. Also the spots on these boxes seem like they’d be kinda easy to camp now that roaring can’t go through objects. Seems like you could hide/camp in the blue or crouch in the cyan to avoid getting roared, then jump up to the green to jump over the dragons bite and onto its back to press the button. This whole area seems a lil spooky for the dragon.

I will say that perhaps my sizing of objects here makes it seem smaller than it actually is (its about 2 dragons wide) but I have made a couple changes, I changed the objects where the boxes are to make it less campy, and widened the area towards the back

2 Likes

Microsoft did just recently roll out mouse and keyboard support for Series X because it apparently was highly requested.

1 Like

It is unfortunate that something like this had to happen, but it will definitely lead to better service and it is something I am personally excited about.

It is extraordinary for a company as influential, successful and wealthy as Valve to repeatedly produce such unreliable apps and tools. It is something that could be observed with Valve since very long time ago.

2 Likes