Jump to content
3DXChat Community

AlexRyder

Members
  • Content Count

    247
  • Joined

  • Last visited

About AlexRyder

  • Rank
    Advanced Member

Profile Information

  • Gender
    Male

Recent Profile Visitors

689 profile views
  1. Aaand the 60-second check is of course client-sided. Which means β€” workaroundable. Only took about 10 min to find it in the binaries
  2. Just as an info note, it's still fairly simple to patch the compiled binaries to workaround certain security checks. For example, only took me a few minutes with IDA to find the player ignored check before processing chat messages: Can be easily patched as well. It only became impossible to add complicated stuff to the game, i.e. the good stuff. To make the game actually secure such checks should be performed server-side, not on the client.
  3. It could also have the HSV and alpha sliders though
  4. 3dx places clothes models on top of the full avi models and uses alpha masks to hide parts of the body covered with clothes so that it won't randomly peek through. Adding texture layers to the models (i.e. tattoos and stuff) is fairly easy but requires modifying shaders. Stockings are implemented this way. Placing textures on random places of the models would be more complicated, but doable. Making earrings, piercings, gloves, etc.is for the most part a matter of modeling and rigging.
  5. I think they have an automatic UnityScript-to-C# conversion tool, but I haven't checked that. But there can be other legacy content which can be harder to update, like shaders or animations.
  6. Rewriting scripts from UnityScript to C# is not that hard really, can probably be done in a couple of weeks or something if you have sources. Or can be done via .dll decompilation to C# and some manual fixing (mostly required for IEnumerators).
  7. 3dxChat is still using Unity 5.5 (pretty outdated version by now, from 2016), this blog post is about Unity 2017. And seriously, Windows XP in 2019?
  8. The simplest and most obvious one β€” just rename Patcher.exe to something else, the game won't be able to run it then.
  9. The check for gift id < 787348 seems to be rather unreliable. The ids may be mixed in the database, or new entries may be inserted in place of earlier removed ones, dunno, that depends on the server backend. Weirdly enough, the date check can also misfire for some reason, so I would say the most reliable way is to do a validity check against the 1252 codepage before trying to convert data.
  10. But... it's not really a fix, the data in the database still stays broken. You should at least run this fixer on the database (though it's probably the worst way to deal with this problem ever). Also, the code in 383 is missing the check for broken encoding for profiles (some people have managed to change their data between 380 and 382) and a few special cases handling, which will probably still crash the profiles script. Also, a lot of gifs are missing from people's profiles and the gift count received with the profile in most cases is now greater than the actual gift count. It seems like the
  11. Regarding the Bob and Betty issue: you currently have their data switched in the database (i.e. Betty should have id 1 and Bob β€” id 2). Since they are reverse the client tries to apply female char data to a male and vice versa. Edit: Correction. Betty now seems to occupy ids 2 and 3, Bob β€” ids 1 and 4, where ids 1 and 2 have working char data and broken profiles, and ids 3 and 4 have broken char data but working profiles. It's a mess.
  12. A few corrections to the previous bugfix post. Apparently, the mess with the data in the database has gotten even more complicated since there are now old broken profiles with broken encodings, old broken profiles with normal encodings, and new profiles. Also, the gifts sent after the update has been rolled out don't need to be fixed. For the profiles: private void LoadProfile(string profileData) { profileData = profileData.Trim(); if (profileData.StartsWith("{", StringComparison.Ordinal)) { // New JSON profiles LoadJsonProfile(profileData); } else if (pr
  13. Having looked at what's going on with the texts, it seems to me the most likely scenario of what went wrong was a double conversion of the database encoding: UTF-8 --> Latin1 --> UTF-8. Most like this conversion was not lossless, so it won't be possible to restore 100% of invalid characters by only working with corrupt data. Also, there seem to have been some string conversions which broke some of the XMLs and added some extra mess to the pile in general. I've managed to invent a pretty ugly "unmesser" for all that (at least, it works for all of the profiles and gift texts I have tried i
  14. To everyone concerned about their profiles, friendlists, photos, etc.: all the data is still on the server, but there are obviously some character encoding issues, so when the game tries to display a profile with such illegal XML characters, the profile script crashes, which causes random profile bugs like part of the data disappearing or being incomplete. But by all means you SHOULD avoid editing anything in your profiles, because most likely it will erase or break your data on the server as well.
  15. That's probably intended at the moment, put the patcher fails because of a 403 access denied error when trying to download the patch binary from http://download.3dxchat.com/StandaloneWindows_379_380.m2hpatch
×
×
  • Create New...