Previous updates:
GameHeart Project, Update #1
GameHeart Project, Update #2
GameHeart Project, Update #3
Update -
Sorry the blog is a couple of days late. The past two weeks have been pretty busy. Ahli has been cranking away on an interface file for an upcoming tournament, and I have been working on trying to get GameHeart Light up and running so it could make it’s debut. Today. I am super excited that the Break Out Invitational will be using the new GameHeart Light for the first time in a tournament today. So please check it out, which you can do at this link.
That also means that you can go check it out for yourselves on the NA region by searching for ‘GHLight’ in the custom games section. The current ladder pool of maps will appear with GameHeart light on them. I am still having troubles with the stronger team colors mod but I will go into that later on in this blog. Sorry to the other three regions, while I did upload the maps to those regions they are not working correctly at this time. I am still working on figuring out exactly what the problem is.
We still have a ways to go, but this is a huge step.
Interface file
Well I finally have some good news about the interface file. It’s here. It’s ready for you guys to grab. We haven’t implemented the functionality we will need to make it work with the MIT Overseer stuff later, but we will issue an update for it when that time comes. For now, you can download it right here.
GameHeart Elongated v1.0
I am pleased with how it has turned out, though unfortunately we had to make some compromises to the design because of some limitations or restrictions on what we can change using interface files. Hopefully in the future we will be given more freedom on working with the unit info panel (the selection window).
The next interface I want to complete is actually very similar to the current GHClassic interface, except the main bar is moved to the top. You might remember this is the mockup I showed in the IndieGoGo campaign. We already know based on our experiences working on GameHeart Elongated that some of what I mocked up here is not possible, but we will do our best to match it making as few compromises as we can.
The goal with this interface is to consolidate information as much as possible to the top bar, so that the viewing area of the game is as close to being an exact wide-screen rectangle as possible. The original mockup was created all the way back in April after discussing the pros and cons of the current GHClassic interface with Adebisi.
Soon I hope to create two new threads on Team Liquid, one specfically for discussing our interface files or interface files in general, and the other for discussing the mod/custom maps. But first I better run it by the moderators. But hopefully when that happens you guys will have an easy way to discuss the interfaces with Ahli, who is constantly working to improve and polish his interfaces to the best of his ability.
Stronger team colors
Pzea is still working away modifying HotS unit textures to add to Stronger Team Colors and GameHeart. Several people have expressed displeasure with the old STC colossus, and he has gone ahead and redone it, which you can see here.
He has also sent me a couple of different ideas for the Tempest. Which do you prefer, A or B?
Hopefully we will be able to get these into GameHeart soon!
MIT Overseer integration
The gentlemen at MIT Game Lab have also been working on creating a module that I can plug into GameHeart which will show the upgrade notifications at the side of the screen when upgrades are about to complete. I got to test it in GameHeart Light and I have to say it is looking pretty damn awesome. Here is a screenshot of it in action:
I am really excited about this and I can’t wait for it to get out of testing and into GameHeart as a permanent feature. And I really look forward to seeing what they do next.
Anyways, that is it for the updates. Now onto the main content!
Extension mods -
For those of you who were paying attention during Blizzcon, there were some pretty cool announcements regarding the arcade during the Starcraft 2 Update panel. The one I want to talk about is extension mods.
What are they?
Well the gist of it is that extension mods are mod files which you can use with any melee map. They used the example of monobattles in their presentation. Now, a mod developer will be able to publish just their mod, and you as the user will be able to choose what map you want to use with it.
What does that mean for GameHeart?
That means no more GameHeart maps because any map could be turned into a GameHeart map by just selecting it with the mod. Crazy!
This is really important, because it will make it much more likely a tournament will be willing to adopt GameHeart. Right now tournaments have to use maps that I upload, and while I was working on making it as simple as possible for them to add GameHeart to their own maps, now they won’t even have to. They will be able to just use GameHeart with whatever map they want, so any tournament that is concerned about not having direct control over the maps themselves will no longer have to worry about that when making their decision to use GameHeart.
I think this will be a huge step towards gaining the widespread adoption that I am hoping for from tournaments. It almost feels like this feature was designed especially for me and my project it is so perfectly suited for GameHeart. I am very grateful that Blizzard is moving forward with it.
But is it really that easy?
Yes and no. While this feature is amazing, I think there will definitely be some complications to implementing it. GameHeart has two different methods for determining the location to place logos. Some logos, like the logos that appear in the mineral lines are placed automatically in a point calculated based on the relative location of the minerals to the base building. This is fine, and will work correctly on just about every map unless they have a crazy mineral layout. However some logos, like the big team logos that appear outside the bases, or the league logos which appear in the middle of the map use special points that are added to each map itself in order to determine their location.
The easiest way to make that work would be to have all melee map makers take this into consideration when they are creating their maps, and add in the points necessary to make GameHeart work correctly before they ever publish it. And to this end I am going to do the best job I can to make it simple and easy to add these points to their map. I have already uploaded a map any map maker can download that has the 8 points GameHeart uses so they can just copy and paste them into their maps, and then move them around as they see fit. They can even adjust the rotation of the points and the logos in GameHeart will reflect that rotation when they are created.
You can find that map right now on Battle.net as “GameHeart Point Replicator” so please if you are a melee map maker, go download it and start adding those points to your maps! I am also working on a rather in-depth tutorial on the process, and I have developed a tool that will allow map makers to test how the logos will look on their maps before ever uploading them. You can find more information about that at this link. I will probably be turning that into another blog post entirely once we figure a few more things out. Be aware that the number of points may change, as I may well be adding team or league sponsor logo support in the future.
Getting all map makers to support GameHeart would be great, but unfortunately things will not always be that easy. Ladder maps are unlikely to come with these points preloaded. The map making community also spans the globe, and there are a lot of great maps coming from communities that may not be as familiar with GameHeart or certainly not this blog. I hope we can spread the word about adding these points to maps, but even if we cannot get most map creators to add them to their maps we have another option.
That option is to create an override on a per-map basis within the GameHeart mod itself. But before I can do that, I need a system for reliably detecting what map GameHeart is being used on. Simply using the map name will not work, as many maps get uploaded regularly under different names for different reasons. Sometimes they have different names across regions as well. So I need a system that can determine which map is being used and then tell the logos where to go based on that information.
Designing a map detection system
So my first thought was to create a system based on the exact start locations of the players. It is fairly unlikely that two maps will have the exact same start locations using x/y coordinates so it seems like a reasonably good system for detecting what map is being used.
Unfortunately I may not always have the ability to open up a map and see the coordinates it uses for start locations. Many map creators put their maps online in a ‘locked’ state where other developers cannot download their map to look at (or possibly copy) it’s content. That makes this job of detecting maps rather complicated.
However, if the extension mod system works the way I think it will I should be able to create an extension mod that I could then use on their maps to retrieve this data. Basically the extension mod would just feed back info to me about the exact grid locations of the starting points, or the distance between spawns… whatever identifier I choose to use in GameHeart to detect specific maps.
If you have another idea on a universal system I could develop for detecting exactly which map is in use please let me know! I am definitely open to ideas here.
Problems -
Unfortunately placing specific points on the map is not the only problem I foresee for GameHeart functioning with extension mods.
Default observed ID
There is a dropdown menu at the bottom of the player properties of each map in the editor that controls the default observer ID. This ID is very important because it enables me to show observers things like the production icons over buildings, or the team/league logos without showing them to players. Unfortunately it has to be set in the map itself, and not in a mod file. That means unless a map has an observer ID setup, functions like team/league logos and production icons will not work when using a GameHeart extension mod.
This is just speculation mostly since I don’t know exactly how extension mods work yet but I think it’s a pretty realistic guess as to how things will play out. With that in mind I requested that Blizzard setup a default observer ID for all maps so that I don’t need to worry about this problem. But I don’t know if doing so is feasible for them. Hopefully it is. Otherwise I need to get each map creator to set one up before he publishes his map.
The issue from the last update
Remember that problem from the last blog update about corrupt game attributes? No? I don’t blame you. Well anyways I managed to narrow down the cause of the problem to doing a multi-region upload of a file that has any game attributes in it. And once you attempt to do this the file becomes (as far as I can tell) permanently corrupted so game attributes will no longer function correctly.
You can seemingly avoid the problem by uploading the file to each individual region, so that is what I have been doing. However if you first tried to upload it to multi-region the file will still be broken even doing the single region upload now. Though with the crazy pod/core file system I have been using to make ‘use latest version’ possible across multiple accounts (I discussed this in the last update as well) makes the process pretty confusing. I am already dealing with 16 files to manage GameHeart. That isn’t strictly necessary but I wanted to make the different features of GameHeart available as individual mods so that tournaments can easily pick and choose which features they would like. I think these mod files need to be uploaded in a specific order to work correctly, and I suspect I screwed that up for the other 3 regions and that is why they are not working correctly right now with the GHLight maps.
New discussion topic -
This week I have what I think is a pretty interesting topic. I hinted at this a little bit during my indiegogo campaign with the player intros stretch goal that we didn’t reach.
Before I get too far into it I want to be clear. This is not something I can implement right now. While it is technically possible to do the amount of work would be significant, and I just cannot afford to put the time into it. But I want to talk about it anyways because it is a direction I would really like to see Starcraft spectating go. It would help players build a reputation and promote themselves, as well as do more to make each game of Starcraft between two pros feel different. And anything that does that is a good thing in my mind.
Player trophies
The idea is that when a player wins a tournament he earns a badge that he carries with him to every competitive game he plays from that point forwards. This badge, or trophy would be displayed as an icon near his main building when he plays in GameHeart. Win WCS in 2013? Every game you play in GameHeart from that point on will feature a little WCS 2013 trophy badge in your base so people can really get a feeling for your accomplishments as a player.
I went ahead and mocked up what I thought it might look like. Please use your imagination and replace the Gama Bears logos with trophies from different tournaments in your mind.
It’s a pretty basic mockup, but remember you can always go use the “GHTesting - Sponsors 1” map in the NA arcade to create a mockup of your own and share your ideas here.
This concept would require keeping a database of players inside of GameHeart, with very regular updates. Maybe we will get to a point someday where we can support this. But even now I wonder what you guys would think of a feature like this. Is it too much? I feel like anything that lets a player distinguish himself in the game is probably a good thing. I think it is also great to remind audiences that a player was once really successful even if he is having a tough time now.
What are your thoughts? How would you implement something like this?
Rumble in the Bronze -
Before I wrap it up I want to talk about this event coming up. Some friends of mine are hosting an event on December 7th called “Rumble in the Bronze” and it will be the fourth year in a row this particular community of players has put on a Starcraft charity event to support Child’s Play. It’s a fun event which mostly boils down to pros doing commentary and making fun of bronze level games.
You can click on the image to go to their TL.net thread.
To give you a little background GameHeart was born out of another project I was working on with this same group of people so they really care about Starcraft and they want to put that passion into good use. The last couple of years I was really involved but this year I am only doing a few graphics for their stream because I am rather busy. The least I could do is try to get any chump reading this blog to check out their event. I hope you will, it will be a huge amount of fun.
Okay so I think that is it for this update. I may request some help in a day or two with testing specific things in GameHeart. I hope you guys will help me out!