Feature requests
by ubeefx
Moderators: ubeefx, beholder, melvin, ShawnieBoy, Lodici, CCGHQ Admins
Re: Feature requests
by Lodici » 23 Feb 2015, 02:30
Ok, thanks - I will have a think.hong yie wrote:the most important info is..
a player need to know which one is the progenitor mimic, the owner might want to put shroud / other buff ability to protect, while opponent need to know which one to kill.
While in phantasmal case, player might need to know that this token will be destroyed when targeted.
Re: Feature requests
by Lodici » 23 Feb 2015, 14:36
Thanks - issue #71 created.muppet wrote:I sometimes have trouble determining the target of an ability cast by the opponent. For example I have 10 soldier tokens in play opponent casts Maelstrom Pulse, I need to know which one is targeted so I can kill it with a Doom Blade to fizzle the pulse.
Re: Feature requests
by hong yie » 24 Feb 2015, 01:11
maybe a "crosshair shaped" overlay on the card that is being targeted, with a popup showing the name of effect that is targeting the card. though the situation could be hectic in matches that involve decks with red or blue, as these colors has many strong instants & tend to respond to other spells.muppet wrote:I sometimes have trouble determining the target of an ability cast by the opponent. For example I have 10 soldier tokens in play opponent casts Maelstrom Pulse, I need to know which one is targeted so I can kill it with a Doom Blade to fizzle the pulse.
I'm sure Lodici knows what is the best interface feature to solve this.
-
hong yie - Programmer
- Posts: 216
- Joined: 10 Mar 2013, 06:44
- Location: Jakarta
- Has thanked: 75 times
- Been thanked: 9 times
Re: Feature requests
by muppet » 25 Feb 2015, 12:12
Can't imagine many people wld want this but I think its easy to do and I would like it so some people might. I want to be able to play against an unknown deck in the right format from a list or just all decks of that format in a directory or all decks of that format on firemind. This is just so I don't know what deck the ai has before I start.
Re: Feature requests
by Lodici » 25 Feb 2015, 15:05
thanks - issue #73 created.muppet wrote:Can't imagine many people wld want this but I think its easy to do and I would like it so some people might. I want to be able to play against an unknown deck in the right format from a list or just all decks of that format in a directory or all decks of that format on firemind. This is just so I don't know what deck the ai has before I start.
Re: Feature requests
by PalladiaMors » 06 Mar 2015, 01:00
Magarena counts each half of split cards as an individual card, that is, each split card is counted as two cards. Every source I can find indicates that split cards should be counted as individual cards. This isn't a particularly relevant problem, but it does mean that the global card count and the implemented cards percentage are slightly wrong. There's enough split cards in the game that this has a small impact. Maybe it's not possible to join both halves of these cards together, given how the cards are displayed in the card explorer, but maybe it could be possible to find a way that they aren't counted twice?
My hidden agenda behind this: it would be easier to reach 50% of the cards in Dissension if the set's 10 split cards weren't counted as 20!
My hidden agenda behind this: it would be easier to reach 50% of the cards in Dissension if the set's 10 split cards weren't counted as 20!
- PalladiaMors
- Posts: 343
- Joined: 12 Jul 2014, 17:40
- Has thanked: 36 times
- Been thanked: 22 times
Re: Feature requests
by Lodici » 06 Mar 2015, 01:29
thanks, tracking as issue 84.PalladiaMors wrote:Magarena counts each half of split cards as an individual card, that is, each split card is counted as two cards. Every source I can find indicates that split cards should be counted as individual cards. This isn't a particularly relevant problem, but it does mean that the global card count and the implemented cards percentage are slightly wrong. There's enough split cards in the game that this has a small impact. Maybe it's not possible to join both halves of these cards together, given how the cards are displayed in the card explorer, but maybe it could be possible to find a way that they aren't counted twice?
My hidden agenda behind this: it would be easier to reach 50% of the cards in Dissension if the set's 10 split cards weren't counted as 20!
Re: Feature requests
by Huggybaby » 06 Mar 2015, 03:38
It takes me approx 45 seconds to extract the Magarena 1.59.zip file, and most of that time is spent decompressing the scripts folder.
45 seconds is a long time to decompress a bunch of text files I'm thinking to myself.
I tried using the zip Store (fastest, no compression) setting, with no help. Same for 7zip.
So I turned the scripts and scripts_missing folders into zip files. Funny that using the storage setting, which is supposed to be no compression, that the folders get much smaller anyway.
Now, if I unzip Magarena 1.59.zip, which includes the two zipped folders, the process takes literally only one second, which is a 45 times improvement.
This improvement is undeniable. For it to be realized means that, before the game starts, Magarena needs to either read the zipped scripts folder, or decompress it in the background.
That's the first opportunity for a speed improvement. Here's the second:
Once extracted, the initial loading snags on the the loading cards function, which brings everything to a halt until completed. If Magarena has already been run and closed, and so is loaded into RAM, it launches much quicker, but still takes too long, I think, to get going.
The solution to this is to run the loading cards function low priority in the background.
I suggest getting to the UI immediately, or as quickly as possible, while everything else happens behind the scenes, which leads to the same end result, but lends a much more fluid user experience.
Doing things in the background can lead to interrupt problems, but you can handle that with a "please wait while" message, which should honestly rarely be seen.
45 seconds is a long time to decompress a bunch of text files I'm thinking to myself.
I tried using the zip Store (fastest, no compression) setting, with no help. Same for 7zip.
So I turned the scripts and scripts_missing folders into zip files. Funny that using the storage setting, which is supposed to be no compression, that the folders get much smaller anyway.
Now, if I unzip Magarena 1.59.zip, which includes the two zipped folders, the process takes literally only one second, which is a 45 times improvement.
This improvement is undeniable. For it to be realized means that, before the game starts, Magarena needs to either read the zipped scripts folder, or decompress it in the background.
That's the first opportunity for a speed improvement. Here's the second:
Once extracted, the initial loading snags on the the loading cards function, which brings everything to a halt until completed. If Magarena has already been run and closed, and so is loaded into RAM, it launches much quicker, but still takes too long, I think, to get going.
The solution to this is to run the loading cards function low priority in the background.
I suggest getting to the UI immediately, or as quickly as possible, while everything else happens behind the scenes, which leads to the same end result, but lends a much more fluid user experience.
Doing things in the background can lead to interrupt problems, but you can handle that with a "please wait while" message, which should honestly rarely be seen.
-
Huggybaby - Administrator
- Posts: 3207
- Joined: 15 Jan 2006, 19:44
- Location: Finally out of Atlanta
- Has thanked: 701 times
- Been thanked: 594 times
Re: Feature requests
by Lodici » 06 Mar 2015, 04:02
The problem I foresee with loading the cards in the background is that you would need to implement a shed-load of just-in-time code based on the user actions. For example, the user is well happy that the main menu appears after a few seconds but less so when clicking on Cards Explorer and having to wait for the background loading to catch up before the screen is displayed. Likewise with the deck editor or basically any screen where card data is required. Ultimately, the card details are the core data on which everything in Magarena depends and the reason it takes time is because we store all that information in text files. I think if it was stored in a database (eg. SQLite) then it would be much quicker but then you lose ease of accessibility in updating. Swings and round-abouts really.Huggybaby wrote:The solution to this is to run the loading cards function low priority in the background.
I suggest getting to the UI immediately, or as quickly as possible, while everything else happens behind the scenes, which leads to the same end result, but lends a much more fluid user experience...
Re: Feature requests
by Huggybaby » 06 Mar 2015, 04:18
Understood, but I'm not talking about JIT loading...right now it is so serial and absolute. You need to load ALL the cards, for someone that is going to use a premade deck? You presuppose that someone is going to the deckbuilder screen and needs immediate access to the whole library?
There must be a way to arrange it so that, if you need a 45 second loading time, you can break it down into the necessary chunks.
I never use the Cards Explorer or the deck builder, and I wonder how many do. Magarena is supposed to be fast to play damnit. When I want to to build and edit decks, I totally don't mind waiting for those functions to implement. But otherwise lets get it on. Magarena is fast and smart. That extends to not only gameplay but the whole user experience in my mind.
There must be a way to arrange it so that, if you need a 45 second loading time, you can break it down into the necessary chunks.
I never use the Cards Explorer or the deck builder, and I wonder how many do. Magarena is supposed to be fast to play damnit. When I want to to build and edit decks, I totally don't mind waiting for those functions to implement. But otherwise lets get it on. Magarena is fast and smart. That extends to not only gameplay but the whole user experience in my mind.
-
Huggybaby - Administrator
- Posts: 3207
- Joined: 15 Jan 2006, 19:44
- Location: Finally out of Atlanta
- Has thanked: 701 times
- Been thanked: 594 times
Re: Feature requests
by Lodici » 06 Mar 2015, 04:28
If you are only interested in pre-built decks then I think it would probably be fairly simple to load on demand just the required cards, so maybe there is a case for a more streamlined startup configuration.Huggybaby wrote:..You need to load ALL the cards, for someone that is going to use a premade deck?...
Re: Feature requests
by Huggybaby » 06 Mar 2015, 04:47
I'm not advocating against loading every card in advance, or advocating for only loading what is specifically required at the moment, because I don't presume to know the behind-the-scenes specifics, and it's just as well having all assets loaded if the user's system can handle it. All I'm saying is: feel free to load everything, exactly as it is being done now, with a different emphasis on timing and sequence.
-
Huggybaby - Administrator
- Posts: 3207
- Joined: 15 Jan 2006, 19:44
- Location: Finally out of Atlanta
- Has thanked: 701 times
- Been thanked: 594 times
Re: Feature requests
by melvin » 06 Mar 2015, 06:56
@Huggybaby: I'm confused is 45s the time to unzip the installer or the time to start the program? If 45s is the time to unzip the installer, how long does it take to start the program and get into a match?
-
melvin - AI Programmer
- Posts: 1062
- Joined: 21 Mar 2010, 12:26
- Location: Singapore
- Has thanked: 36 times
- Been thanked: 459 times
Re: Feature requests
by Lodici » 06 Mar 2015, 17:12
So basically load in the background AND load on demand! I am sure someone out there is up for the challenge (suggest reading up on multiple thread communication and collection synchronization ).Huggybaby wrote:I'm not advocating against loading every card in advance, or advocating for only loading what is specifically required at the moment, because I don't presume to know the behind-the-scenes specifics, and it's just as well having all assets loaded if the user's system can handle it. All I'm saying is: feel free to load everything, exactly as it is being done now, with a different emphasis on timing and sequence.
Re: Feature requests
by ShawnieBoy » 06 Mar 2015, 19:55
I understand what Huggybaby means.
When coming back I downloaded the newest version (as a user) instead of building a dev version from git. (Was still sorting out IDE stuff). It didn't take long to download but felt like it took forever to unzip. It did get me thinking whether it always took this long, or that I had got used to it.
The same goes for launching the game. I always knew it took a while for the cards to load, but I was already thinking again "Did it always take this long?"
When working on cards and things, I will be launching and relaunching more times than a 'normal' player, so I think over time I've either accepted it or just got used to it.
If it would be possible to get to the UI and layout before it goes to the 'Loading Abilities' section, and let that process continue while you're going through the menus and things, and only when a screen is encountered that requires the card code, then have a 'Loading Cards' pop-up to show the progress that has already been done, and is still continuing. Or something similar to the 'new version' little pop-up, "% cards loaded".
If that makes sense.
When coming back I downloaded the newest version (as a user) instead of building a dev version from git. (Was still sorting out IDE stuff). It didn't take long to download but felt like it took forever to unzip. It did get me thinking whether it always took this long, or that I had got used to it.
The same goes for launching the game. I always knew it took a while for the cards to load, but I was already thinking again "Did it always take this long?"
When working on cards and things, I will be launching and relaunching more times than a 'normal' player, so I think over time I've either accepted it or just got used to it.
If it would be possible to get to the UI and layout before it goes to the 'Loading Abilities' section, and let that process continue while you're going through the menus and things, and only when a screen is encountered that requires the card code, then have a 'Loading Cards' pop-up to show the progress that has already been done, and is still continuing. Or something similar to the 'new version' little pop-up, "% cards loaded".
If that makes sense.
-
ShawnieBoy - Programmer
- Posts: 601
- Joined: 02 Apr 2012, 22:42
- Location: UK
- Has thanked: 80 times
- Been thanked: 50 times
Who is online
Users browsing this forum: No registered users and 54 guests