In the previous weekly update I presented the Match Simulation view and announced that the following week will be spent on implementing Prepare for Match view. And fair enough, it took me the entire week to work on that part, and there are still some features that I am yet to implement (namely drag and drop functionality).
This wasn't an easy week for me, as there was a tonne of different things that I had to take care of apart from the dGoal. That left me with less free time that I'd like. I was, however, able to accomplish the weekly goal, and I am proud to present you with the Prepare for Match view.
Read on to learn more!
Football Pitch component
By far the biggest feature that I managed to implement this week is the Football Pitch component. It is used to display the pitch with players mapped onto it. This component is used both to show past matches and to prepare for future matches. Let's start with the former.
Previously in dGoal, you'd only be able to see lineups of each team: home and away. Now, with the Football Pitch component, you can actually see the pitch and look how players of both teams were positioned.
On the left hand side of the card you can see home team lineup, while on the right there's the away team lineup. In the middle there's the simulation with tabs on top.
You can use tabs to select which team you want to investigate. Players of the selected team will be highlighted with blue color. Each player is indicated with their initials (so Jon Doe will be shown as JD). You can hover over any player to see their full name, position and overall strength.
Match Simulation displaying the football pitch with players mapped onto it
Prepare for Match
Prepare for Match view also relies on Football Pitch component heavily.
One of main problems I had when using Rabona interface when preparing for match, was that there was not easy way to visually see which player plays on which position. There was a pitch image with numbers mapped onto it, and then one had to assign players relative to these numbers.
What's worse, the numbers were unstable, i.e. number 3 in one formation was a defender position, while in other it was a fairly forward-positioned middlefielder. So changing a formation meant that it was necessary to move a lot of players and one had to constantly check whether the numbers are right.
I must agree that it wasn't obvious at first how this user experience could be improved, while still being compatible with Rabona underlying API.
After some brainstorming and tinkering I finally found a solution. It required sitting down with good old pen and paper, and analyzing Rabona formations.
By doing this, I extracted some common positions that both formations share. I gave these positions a human-readable names (Left Middlefielder, Right Attacker etc.) and then created a mapping between this human-readable name and the number which Rabona uses for this position.
Thanks to that dGoal users no longer have to worry for any numbers when specifying their formations. Instead, thay can see the football pitch with positions identified by easy-to-understand types.
Clicking on a position opens up a selector, where you can see all your players with their designed positions (GK, DEF, MID or ATT), OS and age. You can select any player and it will be put in the right place.
In the screenshot below, I opened a selector to select a player which ought to play on position of Middle Attacker (M/ATT). I would probably choose one of my three attackers, but one is free to choose any player.
Once you choose players for all 11 positions, you should also put some players on the bench. You can add up to 10 players there.
This new system is much more user-friendly and lets you instantly see which player plays where. If for any reason you've got a defender playing in the attack, or an attacker in the defense, you'll be able to see it right away and replace those players.
Of course, there are still options to save and load lineup from the blockchain. It works the same way as it does in Rabona interface.
This week we saw the feature of encrypted formations introduced to Rabona. This greatly changes the game dynamic, as players have to rely more on past data analysis and luck while preparing their formations against opponents.
dGoal already handles the encrypted formations, so if you prepare for your match using it, the formation will be encrypted and your opponent will not be able to look it up before the match.
Because of how the lineup encryption is currently implemented, dGoal will not be able to decrypt your own formations for upcoming matches if you set them up using Rabona, and vice versa.
If you open Prepare for Match view for such a lineup, you'll see an alert that formation was defaulted to 433. You can still manually change the formation to the one that was submitted and the players will arrange properly automatically.
Other minor improvements
Fixed Match Stats bug
There was a minor bug in the match stats component, which displays match statistics (passes, dribbling, shots etc.) in a dynamic chart. The problem was that for dribblings and shots it would show invalid data (data for home and away teams was mixed). The problem was fixed and is now live.
Fixed login bug
There was a minor bug introduced last week which rendered the login page unusable. It would disable login form and show the Hive Keychain extension not installed message even for users that had the extension installed properly.
Thanks to @udabeu for reporting the problem and providing enough information that I was able to find the issue and fix it quickly!
Updated scrollbar styles
@cryptosimplify reported that sidebars in dGoal look kind of ugly, especially on Windows OS. I haven't previously saw that problem, as I mostly use Ubuntu OS. I changed scrollbars's styles to be much thinner and not take up that much space. They also are more aligned with the dGoal general style.
What's coming next
This was a crazy week for me and it seems the coming one will be even more intense. I spent around 30-40 working hours implementing things that I described above. I am not sure how much time I will be able to spend this week, but the main objective is to implement drag and drop functionality for the Football Pitch component. This will make it even easier to swap players around and move them between the first 11 and the bench.
Apart from that, I'll try to add some missing pages:
- entire season fixtures view,
- all fixtures from the past,
- all events (news) view,
- team view, etc.
They should be relatively east to implement and will bring us that much closer to dGoal alpha release.
That's all for this week's update. I hope you will like the changes introduced in this week's release. At the very end of this post I would like to ask you to help me develop dGoal.
How you can do this? Simply, go visit www.dgoal.app page, log in and start using the already-existing features. If you spot any issues, bugs, problems, let me know in the comments of this post. dGoal is still in its very early phase and there can be things which I have missed during my own testing.
As always, thanks for your attention and see you next week!
dGoal is an interface for Rabona online football manager,
where you can manage a fictional football club and earn cryptocurrency.
Do you have what it takes to be a top football manager?