SSherder-Sync & Site Update

Posted by zkwp on Thu 07 Dec 2017 07:53

The past year or so I've been pretty quiet for two main reasons:

  • Not playing as much as I used to, I was obsessed with the game from 2014-2016
  • SSherder's usefulness decreases as BB adds QoL features (not a bad thing, good on them), this includes things like sorting characters by chain completion, viewing a character's reverse chains, cloud CoT saves and so on, all things which SSherder was able to provide before they were added in-game

There was a limit of what SSherder could provide users because most users aren't going to bother constantly and manually keeping their SSherder data synced with their in-game data, chains/ownership is what most users are comfortable with updating, anything else, like characters, formations, etc, is just too much and not worth it.

SSherder-Sync

Solution to above is magically automatically syncing your game data with your SSherder account.

At the time of writing, SSherder-Sync supports syncing characters, formations, manager presets, material counts, chain/ownership and profile data. There's no mobile version right now, so emulating is the ideal method, it may be possible for mobile devices to proxy to PC or connect to PC via wireless access point and have it work all the same, we'll see. If not or if it's too troublesome, then it may be time for me to start learning a bit about Android development.

Anyway, this is still pretty early in development, so let me know about any problems you encounter if you use it, preferably in the issues section, but here is fine too if you don't want to bother registering on GitHub. It'll also be open sourced some time in the future.

API Changes

To accommodate above, there's been a few changes but only to the user API. Game data API is all the same.

  • UserProfile
    • 'chain_eligibility_method' field has been dropped, the default and only method for determining eligibility for chains is via UserBaseCharacter ownership status, which can be conveniently set in bulk in the Chains section
    • 'server' field now has 4 options, aligned with BB's servers: 0: Global, 1: KR, 2: Galaxy, 3: Universe/JP
    • 'ace' field added, references an owned UserCharacter
    • 'manager_preset' field added, tracks your active manager preset
  • UserCharacter
    • 'bigball_id' field added, used by SSherder-Sync to determine if a UserCharacter should be updated or created
    • 'amplified_level' field added
  • UserFormation
    • 'formation_index' field added, this is a bit stupid, but I did it to not mess up existing formations and groups, formation_group 1-10 are now custom while 0 is used for synced formations, formation indexes 0-6 are reserved for main formations, 10-19 for manager presets and 101-150 for saved CoT formations
    • 'ace' field dropped and replaced with 'ace_index' which tracks the position of the ace character, 0-9 (Extra not allowed, starts from top and left to right)
    • 'extra' field added, UserCharacter object
    • 'extra_index' field added, tracks position of extra, 0-11 (the gaps between characters and their bounds, 4 each row)

Site Update

I've done a bit of reshuffling and updating. There's a few new things:

Profile Sidebar

Shows some profile info and links to the user sections which used to be on the top navbar. Those user sections (chains, formations, etc) are now loadable without having to do a page reload, no more delay for switching sections and it puts a little less stress on server because it'll only grab all your game data once. UserCharacter list still has a slight delay to render giant 400+ character lists, currently looking in to it, the majority of the delay is the browser, not the processing which happens right before, will probably move managers to manager preset section.

Formation Section

On top of your existing formation groups, you'll notice 2 new groups, Main and CoT. These can be automatically updated with SSherder-Sync. The cluttered and useless list of characters on the right of each formation has been scrapped, the plan is to have it provide some useful analysis and an option to export the formation to the damage simulator tool. The editor is also a bit rushed, didn't have enough time to flesh it out before today's game update. And UserFormations can finally have an 11th slot (Extra/Support), it only took over a year.

Manager Section

Similar to the Main and CoT formation groups, manager presets can also be automatically updated with SSherder-Sync. You can select an active preset, then other sections of the site will use that info when determining things like character stats.

There'll also be some Manager Trip tracking/analysis in the future. Would be cool if currently active trips were synced, then the site can display notifications to you when they're finished.

CSS

The main reason I was holding back on updating the site's CSS was because it started with an alpha version of Bootstrap 4. Since the site started (about 1.5 years ago), we've gone from alpha.2 to beta.2, progress! So I'm starting to finally update a lot of old things.

KR Localization

Considering KR translations of game data is just as accessible as English translations, it's not much effort for the site to support the KR playerbase, so if you're Korean and don't know a lot of English but you're strangely okay with reading this, try it out (I should probably announce this on DCInside or Naver).

Future

Automatic syncing opens up lots of possibilities, many of which I would've previously rejected because it would be too much of a hassle for users to manually handle. So going forward, the site will focus a lot more on features which make full use of all game data. Some of these features may include: stone syncing, manager trip tracking, searching up other players by their IGNs/ace/rank, and more. And I'll be working on improving ssherder-sync to sync more useful things.

Site's backend might also be rewritten in Go one day. If it does, there might be a maintenance for a few hours or a day or so, with a warning prior.

Update

Posted by zkwp on Mon 12 Jun 2017 01:23

UPDATE 8/17: Recent donations will keep the site going for the remainder of the year. Also added a donations status panel on the homepage for anyone curious. Use that for the definite and most recently updated status.

I'm quitting SS or going very inactive.

As for SSherder, it doesn't take a lot of time to manage, really just an hour every two weeks for each update, but I do have a problem with paying server costs for a website of a game developed & published by companies I have very little respect for.

So I've also decided to allow donating (bottom of page). Donations will go towards server fees, excess amounts saved for next month's bill. I'll see how it goes for 1 or 2 months before deciding what to do with the site.

Contact me if you have any questions, best method for me nowadays is probably on Discord (zkwp#7907).

Project Status Update

Posted by zkwp on Fri 24 Feb 2017 05:53

First and foremost, regarding the "Cloudbleed" bug which was revealed publicly only hours ago since this post.. SSherder uses CloudFlare, however, it should be fine because as far as I know:

  • no ScrapeShield features (Automatic HTTPS Rewrites/Server Side Excludes) were/are not being used;
  • there were/are no malformed script/img tags in the site's HTML content which is processed through CloudFlare

These had to be happening for the memory leak to occur on responses from this domain. However, it doesn't really hurt to change your password just for good measure. Additionally, if you use Discord, reddit or other CloudFlare-using sites, you should change your passwords there too, along with accounts on other websites which use the same password on sites which were affected (don't do this in the future, or at least use unique passwords on your extremely important accounts like banking, Google, etc).

For more information:

Now on to site news, it's been awhile since my last update, I'm not dead and the site has still been receiving data updates (for new characters, skills, etc) right on game maintenance day, along with some site improvements here and there when I have time.

I got a bit lazy with these blog posts because it was getting a bit annoying doing them every 2 weeks when there was a data update. I also haven't had much time and motivation to work on the site, however, it'll continue to be available for the foreseeable future, along with receiving site updates here and there.

Changes in the past few months

  • Updated stones page with some previews of the stones releasing next week (given to me by my trusty friend)
  • Individual filters can now be reset in characters page, also improved the toggle behaviour a bit on the grouped filters like element, role, stones, etc
  • Added a voice actors list and detail pages of every voice actor, shows the same that illustrator data shows
  • Added reverse chain and evolution data on character detail pages
  • Data updates for all the new characters, skills, evolutions, etc

Also, if you need to contact me and want a swift response, I think Discord would be your best bet. I can be found on both the main SS Discord servers (check /r/soccerspirits sidebar to join them), username is zkwp. Could also just post on ssg.

Data Update

Posted by zkwp on Thu 13 Oct 2016 07:16

Thanks for the feedback from here, I agree with most of the suggestions posted and will be implementing them soon, would've liked to have implemented today but I haven't had a lot of free time recently (I hate new CoT).

Changes

User Section Reshuffle

Posted by zkwp on Wed 05 Oct 2016 13:56

The Character Book section was a bit of a mess, it was bulky and it only supported chain toggling one by one. Because its only purposes were setting ownership of characters (used only for chain eligibility calculations) and chain completion status, its been replaced with a simpler Chains section. It has two tabs, one for bulk-editing ownership and other for bulk-editing chain completions.

The Statistics section has also been removed, the Chains section at the bottom has tools for tracking completion and eligibility, viewing progress by four categories: Chains, Chain Missions, Chain Matches and Dimension Stones, and being able to view progress specifically by element and rarity.

It works pretty similar to the standalone Chain Calculator in the tools section, with some extra benefits:

  • Ownership and chain completion is saved on the server's database, rather than in browser storage which isn't very reliable
  • It'll be updated with new character and chain data whenever the data API is updated, which is usually during the patch maintenance or a few hours later
  • It'll be getting feature updates in the future, things like a list of unowned characters who are preventing completion of chains sorted by how many its preventing

There's a lot more to do for user sections:

  • Add options for modifying UserBaseCharacter on the Add/Edit/Delete modals in User Characters section, UserBaseCharacter options are things like chain completion, teamwork level, artwork selection, skin selection, stuff which affects all instances of that character
  • Revamped User Formations section, lots to do there. Afterwards, user formations will be able to be imported in to Damage Simulator tool.
  • Some more useful statistics/info in User Chains section
  • ...And lastly, scripts for being able to grab your own game data. I've made some progress on it already and I've been successful, though there's still work to do on it and also work to do on the site for supporting quick syncing/importing. There's lots and lots of potential here, it would be possible to grab everything in 5 minutes tops, then after syncing with the site all your chain and character data would be 100% updated, the site would probably also start supporting user spirit stones

UPDATE: I made a mistake which accidentally wiped chain completions, sorry. Bug is fixed now.

UPDATE 2: I've partially restored chain completions from a backup from last week, 8531 in total. All UserBaseCharacter objects which had chain_completed set to True on 26th of September, 2016 have been restored. Sorry again to any new users who joined after that date. There shouldn't be any problems from here on out.

Minor Things + Data Update

Posted by zkwp on Thu 29 Sep 2016 18:30

The Data API has received a few minor changes, skills endpoint is finally up and running properly.

For anyone using character image URLs in bots/scripts, change "418x636" to "588x882", the site's now using higher quality images created from BB's hosted PNGs (previously TGAs), rather than the annoying KTX crap.

Changes

Data Update

Posted by zkwp on Mon 12 Sep 2016 09:57

Today's data update was a little delayed because BB have shuffled some things around, though it was still only an hour or so after maintenance end for it to be updated. Also been taking a small break because tired and busy and stuff. I'm aware some character portrait and character icon images are messed up, will fix soon.

Changes

Damage Simulator Tool & Data Update

Posted by zkwp on Thu 01 Sep 2016 08:02

Damage Simulator

A few days ago I released the early version of it, didn't make a news post about it because I've been updating it every day since then. Its been a pretty huge undertaking, the codebase for it exceeds the size of all the other components of the site put together and it's very complex, there's still a lot of work left to do on it as well. Check it out here.

Because it receives a lot of updates, the damage simulator will have its own changelog on that page, so check that whenever you want to know what's changed. I'll also probably throw the site's typescript codebase on the "ssherder-issues" github repo, would be nice to use it for something other than just a channel for users posting bugs/suggestions, others could then contribute or just peruse it to check out things like skill effect calculations.

Changes

  • Data API
  • Technical Stuff
    • Started using flexbox in some parts of the site. If you're on IE8 or IE9, I don't care, update your browser. If you're on IE10 or IE11 and the layout is messed up, let me know (only has partial support).
    • Also started using Vue.js, currently only using it for damage simulator.
  • Updated chain calculator
  • Added damage simulator

Data Update and some things

Posted by zkwp on Thu 18 Aug 2016 07:22

The site went through a bit of a cleanup, you might notice some visual differences. Still working on new features and improving existing ones.

One thing I'm making is a damage simulator (Image), as you can see it's still very WIP, though it can already do some neat stuff like handling skill targets (who receives the buff/debuff), e.g. in the image it's applying Jin's crit rate debuff to Sam. I'll release the alpha version of it hopefully within the next week. After I do that, the functionality of it will be ported to the user formations section.

The reason for slow updates is because recently I've been porting over the site's JavaScript to TypeScript (a superset of JS, allows me to code in TS which then gets compiled down to regular JS which is then used for the site). The process has taken longer than expected because the site has about 5000+ lines of JavaScript excluding raw data for skills, characters, etc., but it's mostly completed. Now I can work on the site's frontend without wanting to kill myself, really though, the main reason was that halfway through creating the damage simulator things became a gigantic mess and it was becoming a nightmare to manage it, TypeScript has helped enormously to manage it (better tooling , IDE features, easier testing, modules/namespaces, enums, ES6 to ES3/ES5 compiling, etc.), another benefit is that it has some similarities with C# (expected because same core architect) which is handy because it's much easier to compare the site's TypeScript code with the game's source code.

Changes

  • Data API
  • Technical Stuff
    • Removed Chart.js from libs, unfortunately this means the user statistics section is temporarily disabled. Reasoning: far too large filesize. Will revamp section soon, sorry!
    • Updated from Bootstrap CSS v4 alpha 2 to BootStrap CSS v4 alpha 3
  • Character List
    • Changed the behavior of the filter buttons a bit, though it's still a bit quirky
    • Added a "Is Special" filter
  • My Characters
    • Changed the behavior of the filter buttons a bit, though it's still a bit quirky
    • Character icons in popover will now show the extra for 7* players

Data Update

Posted by zkwp on Thu 04 Aug 2016 08:56

Standard update for latest game data. Regarding the JP characters (Jade Rakshasa and Elua, more to come), the VA listed in their character profiles is still the KR/Global one. The site currently uses no JP server data, all of it is from KR/Global.

Changes

1.27.0 Major Patch

Posted by zkwp on Thu 28 Jul 2016 09:09

Successfully up to date with the data from the latest patch. I'll be adding support for the new transcendence points thing too soon.

Changes

Data Update

Posted by zkwp on Thu 21 Jul 2016 08:47

Yet another update for latest data. Regarding the major patch next week, it may take a little longer than usual for the site to update depending on how significant the system changes are, though from what we know it should be simple, just the level cap increase to 70 and possibly a skill point cap increase from 18 to 20.

Changes

Some things

Posted by zkwp on Tue 12 Jul 2016 11:18
Just a few small changes:
  • Users can now set their manager bonus stat amounts and club practice field level in their settings (GH-1, GH-2)
  • My Characters section has an Options popdown which allows toggling of club and manager stat bonuses
  • My Formations
    • The regular formation UI has buttons for toggling of club and manager stat bonuses
    • The edit formation UI now displays a red X for selected characters which allows the user to reset the particular formation slot
    • The ace select input in the edit formation UI will no longer reset whenever a character is added/changed, it now respects the previously selected ace. If the user removes a character selected as ace, it'll default to the first available option.

Data Update

Posted by zkwp on Thu 07 Jul 2016 06:49

Another update for latest data.

Changes

Data Update

Posted by zkwp on Thu 23 Jun 2016 07:26

I've been taking a bit of a break recently so there's not much new aside from latest data, I'm planning a few things for release around late July/August.

Changes

Data Update

Posted by zkwp on Thu 09 Jun 2016 06:38

Another small update for latest data.

Changes

  • Data API - BaseCharacters
    • Added Gaphyl (10239)
  • Data API - Characters
    • Added Gaphyl's Base and E (10239, 20239)
    • Added Sky EE (33233)
  • Data API - Skills
    • Added Gaphyl's new skills (110239, 10239, 208, 380, 196, 120239, 20239, 70196)
    • Added Sky's new skills (133233, 33233, 478)
    • Modified dozens of existing skills, mostly skill effect value changes
  • Data API - Chains
    • Added Gaphyl's chain and chain missions
  • Data API - Illustrators
  • Data API - Skins
  • My Formations
    • Reverted to old sorting method until I get natural sorting right

Minor update

Posted by zkwp on Sat 28 May 2016 17:33

Changes

  • Fixed a primary stat calculation error, applies to both character profile page and calculation of primary stats of user characters (GH-17)
  • Added Crocell, Askeladd, Lindberg, Karpila and Irru to chain calculator (GH-6)
  • Users can now reset their account data - check dropdown on top right navbar
  • My Characters
    • Added the ability to filter by element, category, role, stones, priority, rarity, gender, season, name and note (GH-10)
    • Customized filtering and sorting options are now appended to the URI after the hash (#), you can choose whether to include that when sharing your character box with others

Data Update

Posted by zkwp on Thu 26 May 2016 09:00

Just a small update for latest game data. Still working on better formations and some general QoL improvements.

Changes

  • Data API - BaseCharacters
    • Added Dynames (13135)
  • Data API - Characters
    • Added Dynames' Base and E (13135, 23135)
    • Added Mariel EE (33111)
    • Might've been some other small things changing. Angela EE (30237) was already in the game files so no changes there
  • Data API - Skills
    • Added Dynames' new skills (113135, 13135, 309, 310, 123135, 23135, 70310)
    • Added Mariel's new skills (133111, 33111, 477)
    • Modified dozens of existing skills, mostly skill effect value changes
  • Data API - Chains
    • Added Dynames' chain and chain missions
  • Data API - Illustrators
  • Data API - Skins
  • My Formations
    • Formations are now sorted in alphanumerical order (5-1, 5-2, 5-3, ...) instead of lexicographical order (5-1, 5-10, 5-2, ...)
  • Chain Calculator
    • Fixed Azrael's icon. I'll probably revamp this crap and load it from the main JS file, that way it'll be automatically updated whenever I do standard data updates
  • Character Profiles
    • Added 6 or so missing character artworks, the ones from the S2 legendary EE patch a month or so ago.

New section & some fixes

Posted by zkwp on Sun 22 May 2016 19:35

Character Book section

This section addresses a few problems with how things were set up with the Character Box. Because chain eligibility was originally being calculated based on the characters you already have in your box, it kinda encouraged people to start adding characters that they previously owned because of how chains work. Same thing was probably happening with users adding characters they no longer possess whose chains they've completed, just to track chain completion status.

Since the Character Box is really just meant for managing characters which you currently possess, I've made this separate Character Book section which is there to simply track ownership (including past ownership) and chain completion status of a character. Chain eligibility in the Character Box and Statistics section will then calculate eligibility from there, rather than the Character Box which was how things initially were.

For people who've already got their Character Box set up, there's an import button to automatically mark all the characters you have as "owned". There's still some improvements left to make, I was thinking about making the ownership of a character in the Character Book automatically set to "owned" whenever that character is added in the Character Box but the problem is that sometimes some people will just want to test out certain characters, they'll also sometimes import the wrong characters. Anyway, you have an option in your settings to choose how chain eligibility is determined, whether by this new method or the previous method.

Changes over the past week

  • Character Book section (GH-4)
  • Character profiles: fixed up reflex formula
  • Chain Calculator: the usual icon fix which seems to be messing up on a weekly basis
  • My Characters
    • Fixed an evolution bug that was causing characters at first evolution (base) to go straight to EE when evolving them, for some reason it only affected Dark characters
    • Fixed a validation error which was triggering whenever a husbando character was updated
    • Fixed manager passive skill level, was one level less than it should be (GH-13)
    • Fixed the VIT and SPD total labels, they were mixed up (GH-7)
    • Fixed the edit modal showing a red box for the clover input when a value above 30 was inputted, max is 99 as it should be
    • Manager-type characters will now have their clover value default to 0, regardless of user-specified value
    • Added the ability to choose which priority value is used for bulk-added characters
  • My Formations
    • Moved description to top
    • The edit form isn't as horrible now on smaller viewports
    • Removed the active/inactive chain column, now showing chain effect icons on characters where applicable

SSherder enters a new phase!

Posted by zkwp on Mon 16 May 2016 12:09

TL;DR: Site has been revamped massively and now supports managing characters, formations and materials. Things are a bit of a mess right now, so expect some quirks here and there.

Credits

First let me thank some people:

  • Freddie, creator of PADherder. Lots of frontend functionality was fast tracked thanks to him. I also shamefully used a lot of his ideas.
  • kpaekn, creator of his SS database website. He helped me out with data extracting, saved me a massive amount of time.
  • Community, for ideas, bug/inconsistency reports, feedback, etc.

New Features

Users can manage characters from the characters section, creating them as they are in-game, providing analysis on chain eligibility, evolution eligibility and just being able to keep track of characters better.

You can then create formations with the characters you have here, and split them up in to groups, e.g. one for CoT, one for CoD, etc. You can also share them with others if your profile is set to public.

The materials section is basically a more convenient way of tracking characters whose only purpose is being used for evolutions (they can't be leveled, ST'd, etc.). Rather than making these generic characters one-by-one in the characters section, you can just update the count of each one from the materials section. Anyway, this section also provides analysis on how much of each material you need to evolve the characters you have.

Todo List

  • Better formations, support 11th slot (a bit tricky because the 11th can be placed anywhere in each row)
  • Allowing users to select their managers, which could feed info to multiple sections of the site. Like including the + stat amount if you're using stat managers.
  • Allowing users to select their club facility levels, again, would feed analysis in to other sections.
  • A character book section. A separate section is really needed for users to be able to keep track of character ownership, chain status, etc.
  • Characters section, I thought I'd have enough time to finish it off during DNS propagation but apparently not. Though I do plan to expand on it a lot, it's going to have some really cool features like searching by skill effects.
  • Handling stones, a bit tricky to handle
  • Better frontend design, probably wasn't a smart idea to use bootstrap v4 alpha, the quirks should be fixed up soon
  • Ability to import characters en masse, with ability to set all attributes, will probably need to do a CSV/JSON serializer
  • Ask BigBall to release a user API (pfft), that way you could grab all the character data you have in-game and then import it here. If the site gets popular enough and they hear about it, it might be worth a shot, I give it a 5% chance
  • Better charts in statistics section, the library being used for it is neat, but limited in many ways, when I get the time I'll try create my own solution. I really wish Google Charts was open sourced so I could use that.
  • Rewrite SSherder in C++
  • a hundred more things

Funding

I plan to support the site with just donations, though they'll come later on when I know the site is stable. I don't think advertisements would be effective on this type of site anyway, though I'm not a marketer (thank God) so who knows.

Misc

Still looking for feedback and suggestions, also bug reports now more than ever with the new site just being deployed. Methods:

  • Disqus comments in the latest news post here
  • Github
  • /u/zklm (infrequently checked)
  • Myusrnm, SSforum (infrequently checked)

There was probably a lot more things I planned to write here but I'm way too wrecked too think right now.