I am a relative amateur regarding coding. If it comes to mapping and modding i could be categorized as "full newb". None the less: i am the "i-know-it-all" type of guy :) It will maybe be troublesome to deal with me. Just so you know beforehand.
<sub>Because i lack experience, there will be most likely some assumption i made in this thread, that will turn out to be false. If you notice something like this, please feel free to correct me. Also: i am going to use my own interpretation for explanation. You are free to disagree with my interpretation, but don't expect me to change, if you have no valid arguments ;)</sub>
So... what is this project about?
EasyStarcraft (or EZSC) is aimed at the more casual Starcraft2 player. I want to give the players more options to customize the game to their needs and make some of the controls easier to handle.
A lot of the tasked, that you have to do in a Starcraft2 match, are redundant and do not change from match to match. For example: Most players have their own "control-group" layout, they follow each and every game. I want to give the players the option of pushing this "layout", they follow each and every game, to an actual "setting" they can pre-determine. They would have to spend a little work into creating these settings, but they would not need to manually create the control-group while they are in-game. They could focus on the match itself and do not need to search and click(!) for the units, they want in their control-group.
I think the game as of now forces you to much to click on the screen. As a lot of you may know: using the mouse for game-commands is very slow compared to a simple key-stroke. This is one of the reasons why people play with control-groups.
Concrete: if you play with EZSC your units would be automatically added into your pre-determined control-groups after unit-creation. But EZSC doesn't stop here. This is just the essential to get started with this project ;)
I want to provide the users of EZSC with some basic- and examplefunctions. Afterwards the user should be able to create his own "macros" and "custom-commands".
<sub>there is no command for a "spoiler" in this forum, so i can't give you the option to hide this example, but i wanted to at least provide one.</sub>
for example a control group out of
1 Widow Mine
than i press my hotkey for the custom-command "build-outpost"(or however i wanna name it), which is only available while you have a control group of said composition selected:
the hotkey fires a load-command to all units into exactly that medivac(i don't need the medivac or the units in my screen)
i get a chain of 3 Click-Commands:
burrow Widow Mine
build Missile Turret
(indicating every click-command with a hower of a semi-transperent "unit"[like the normal building placement]and a sound)
fire a check after every click, if all units are loaded=true, start moving (a parallel while loop would be great here)
the medivac flys to the position(s) and unloads
Widow Mine burrowes on position defined by click 1
SCV Builds Bunker on position defined by click 2
SCV Builds Missile Turret on position defined by click 3
(don't know at what point the 4 marines, yet... gonna decide it later^^)
add Bunker to Control Group
add Missile Turret to Control Group
load Marines into Bunker
(maybe) load SCVs into Medivac
update Control-Group to "Finished Outpost" or something
for smooth gameplay i would need to alter these commands (automaticly) if the control group changes (because a unit dies... not all units build, yet... or whatever)
there are a lot more functions i want to add, but i hope this can give you an idea of what kind of functions i am thinking of.
And how do you think all of this could work?
You can add triggers to a Starcraft2 map, with which all of these would be possible. The problem: these triggers would only work for yourself. Your enemy would most likely want to have other triggers, other pre-determined settings. So how can we accomplish that both players can use their very own set of triggers on the map?
The answer is pretty obvious, but not simple to accomplish: merge the trigger-files into one map and assign the triggers to a specific player. Now we have the problem, that we have to create a new map for every single match-up. (unless 2 players want to play a best of 5 on the same map or something)
I think here is a real big problem, not because it is impossible, but because it is hard to handle for the user of EZSC. I would like to automate this, so that the users of EZSC only have to push a single button to merge the triggers into one map, upload the map to the server and connect to the game.
... but i don't want EZSC to be an illegal tool to use: A lot of members here suggested, that blizzard would interpret such actions as "botting" and therefore "ban-worthy". I really hope this project doesn't fail because it is "too complicated" to actually connect to an EZSC vs EZSC match.
...uhm balancing issues?
The game is currently not designed for easy to handle controls and intuitive gameplay. A lot of units, abilities and so on would have to be rebalanced. I am a PvPler by heart. I love competitive gameplay and i want a balanced game-situation. But i think the balancing-question has to be pushed back for now. Maybe it is a good idea, after EZSC is "finished", to release it as "OpenBeta" and ask the community what they think of the current balance-situation and adjust accordingly until EZSC reaches a balanced situation, that is "Release"-worthy.
Layout/Design of EZSC
I have a dream. I have a dream of an easy to understand, intuitive and customizable GUI(GraphicUserInterface) :)) <sub>maybe even re-do the whole in-game GUI</sub>
wheely - introduce the MouseWheel as viable control. (i'm atm working on this)
mini-map - 90% (or more) gameplay is mini-map focused: remove the "mini" and make a "map" (over whole screen with variable transparency)
this is to reduce a lot of the mouse-movement. makes distances you have to overcome with your cursor way shorter.
i'm sure i forgot some stuff. Maybe even really important stuff that i should have mentioned. If anything is unclear or you have suggestion: feel free to comment below.
so far necaremus
PS: if you want to dig into some more information: check this thread (here i started the idea of EZSC)
i will have very limited time in the next few weeks to actually come online, but i will try to response ASAP. Maybe there will be the one or the other interested in this project by then :) else this is going to be a solo-project. (this project is going to happen, promised!)
My 2 cents: I don't see this being different enough from regular ladder play to cultivate any interest. Also, it seems like you're appealing to a very small population of ladder players (high silver maybe?) who have the same control groups every game yet are frustrated by the time/control needed to define those control groups.
i want to stay with the example custom command i already posted and compare it to the "traditional" way of doing this:
Actions required for the custom command "build outpost":
set camera to where you want your "outpost" to be
select control group
press hotkey for custom command "build outpost"
time required: < 0,5 sec
Actions required for "traditional" way of doing the exact same thing:
set camera to worker position
add workers to control group
set camera to marines
add marines to control group
set camera to widow mine
add widow mine to control group
set camera to medivac
add medivac to control group
select whole control group
issue the load command for the units into the medivac
shift-issue movement command to the location where you want your "outpost"
wait until all units are loaded
replace movement command with unload command
wait until the units arrive at location
set camera position to the location
select widow mine
press hot-key for burrowing
press hotkey for standard buildings
press hotkey for bunker
press hotkey for standard buildings
press hotkey for missile turret
add bunker to control group
select missile turret
add missile turret to control group
wait until buildings are finished
load marines into bunker
time required: >> 1 sec
... i would guess 5-10 seconds, the waiting not included. ...and i didn't include the actions to jump back with your camera and re-select the control-group, because you had to wait and did something somewhere else on the map.
if you see any faster way of doing this, please tell me :) i don't want to use false information.
/edit: i just noticed, that my "select unit" action, actually is more than a single action after you've added them to your control-group, because you have to either have multiple control-groups or use additional actions to actually get to the unit-selection you want.
i think doing things more than twice as fast is a big difference. starcraft isn't a turn-based game. time is a very limited resource.
and this is just a single custom command... the tool should be a whole library of those custom commands.
fyi: i can't even play sc2 myself - at least not with a framerate, that doesn't look super laggy (2 players, both ~ 90 supply, is around the max my machine can handle before dropping the FPS dramatically)