Rise of Nations: Extended Edition

Rise of Nations: Extended Edition

aflashman Feb 14, 2015 @ 3:01am
Hotkey Trainer
I have made a simple Excel application with VBA to help teach the hotkeys, and I thought I might share if here.

All you do is type the corresponding key and it will ask you another question. If you get it wrong a little message appears.

After a certain number of questions the trainer auto-increments to the next hotkey group.

It is very simple, but I think it is an effective way of learning the hotkeys quite quickly.

I created it because I play both Rise of Empries and Age of Empires and the two games have many of the same buildings but different hotkeys, and I was constantly getting confused which hotkey goes with which game.

You can edit the data behind the hotkeys on the data worksheet (meaning that you can change the hotkeys if you wish). You can even add more commands and hotkeys if you find I have left some out. You can even add more games if you want. Just make sure you click the refresh button to load the new data (the button is under the list boxes).

I know for sure that it works with Excel 2010 and 2013. It should also work with Excel 2007.

You will need to enable macros if your install of Excel does not have this enabled.

Here is the link.

https://dl.orangedox.com/3lgXAPDuuEbU7t7WUF/Hotkey%20Trainer.xlsm

If you have any feed back let me know. I am open to suggestions to try to improve it. My programming skills are fairly basic, but I made this partly as learning exercise.
Last edited by aflashman; Feb 14, 2015 @ 4:35am
< >
Showing 1-4 of 4 comments
That's pretty impressive. Great Job!

I'd like to add that this is great for memory, but if you want speed, there's already another program built into RoN that can help you as well.

If you go to Main->Tools and Extras -> Skills Test, there are some good practice arenas to help a player out, one of them being "Hotkey Handling". The one thing this will have over your macro is that it is more based upon speed (i.e a fixed time).

Though, your program helps to teach the hotkeys, so that's also good.

I think if you want to improve upon this, I would offer two suggestions.

1. Some sort of Time Trial mode, to make sure that speed is a factor (just like in the Skills Test)
2. Figure out Combinations. I mean selecting a market with N is all nice and helpful, but how about disabling a gather point? Or creating 5 of something? Or a hotkey siege attack? These are also very helpful during battle and economics, and I think would be a great add-on to your project. Alt, Shift, and Crtl are 3 important and overlooked keys on the keyboard, and are crucial for improving player speed.

With that being said, great work so far! I'm a software developer myself by profession, so lemme know if you need any help if you wanna improve this in the future.
Last edited by [AS]_Pimp-Masterflex; Feb 14, 2015 @ 10:47am
aflashman Feb 14, 2015 @ 3:24pm 
Thanks checking it out Pimp-Masterflex :)

Some kind of time trial has been on my mind. I'd llike to be able to provide the user stats with which hotkeys they are fastest or slowest with. And also possibley incorporate those stats into the random question generator (thus hotkeys the user gets wrong would be asked more frequently).

Combinations would be nice, I am just not yet quite sure how to implement them. The OnKey method with Excel seems to have some limitations. For example I can't figure out how to capture just a click of the CTRL key by itself (this is more of a key stroke that you see in FPS games than RTS games). That said, CTRL+Letter should definitley be doable. And I'll have to see if I can make it work for ALT and SHIFT as well.

I only know VBA but I have been meaning to learn either VB or C#, so perhaps if I find Excel too limiting I might try achieving something with a few more features using a proper language like VB or C# and makiing a stand-alone application. But that will be some time away. I have a lot to learn.

The Hotkey groups (on the data sheet) could probably do with better organization too. The Compnay of Heroes listings, especiallly are all over the place.

One thing that has been on my mind, is to make it easeir for users to easily create new hotkeys. One trouble I always find with changing the hotkeys is you have to be careful not to over-write otherr hotkey. But with the simulated keyboard in this application the user can easily see which keys are avaialbe to be used.... I'l have to think about that some more.

Originally posted by AS_Pimp-Masterflex:
I'm a software developer myself by profession, so lemme know if you need any help if you wanna improve this in the future.

I work in Market Research. VBA is just something that I taught myself to make it easier to analyse data. I am not a proper programmer, more of an Excel power-user.

But I enjoy the little programming I do, and I am trying to get better at it. If try doing something in another language, I might just ask you a few questions.

What sort of software do you develop? What languages do you typically use? If I wanted to make a stand alone application, what language would you recommend?
Last edited by aflashman; Feb 14, 2015 @ 4:15pm
I work at an educational software company that provides online tools for school, teachers, and students with their gradebooks, school/state reporting, school finances, etc (Basically making their jobs easier). With my company, I mainly utilize ASP.NET with Javascript and C# mainly.

If you wanted to make a stand-alone application, I think the easiest way to get a simple .exe file to do what you want (like if you wanted to practice or something) is in C or C++. But honestly you can make a standalone program in most any language. Actually these days, I think it's more about what IDE you use (like Visual Studio or Eclipse or Netbeans).

I'm a Java man myself, and if you wanted to make a Simple GUI for this, the Javax.swing library would be easy enough to use....

But yea the language isn't really the hard part, it's all about if you need to import certain libraries or whatever. I'm sure it might be POSSIBLE to do all the other stuff in VBA, but at least for a guy like me, it'd be easier to plan out and develop something in something like one of the C's or Java or whatever.
Last edited by [AS]_Pimp-Masterflex; Feb 14, 2015 @ 5:54pm
aflashman Feb 15, 2015 @ 3:17am 
Thanks for advice Pimp-Masterflex. You always have a lot of positive stuff to say in this forum. You're a champion. Cheers.
Last edited by aflashman; Feb 15, 2015 @ 3:18am
< >
Showing 1-4 of 4 comments
Per page: 1530 50

Date Posted: Feb 14, 2015 @ 3:01am
Posts: 4