works shopmenu,sh1
does not work shopmenu2,sh2
does not work shopmenu3,sh3
works itemsinfo
does not work itemsinfo2
does not work itemsinfo3
works myitems
does not work gems
Edit: also cloak of shadows does not seem to work. Also no invis as human.
renamed War3Source_Addon_AdminMenu_ANY.sp to War3Source_Addon_AdminMenu.sp
added War3Source_Addon_AdminConsole.sp
updated diamonds from 5 minute counter to a 1 minute counter
added War3Source_Addon_ShopItems2.sp
NEED TESTERS / COMPILERS TO TEST YOUR OLD RACE SOURCECODE AGAINST THIS ENGINE FOR BACKWARDS COMPATBILITY AND REPORT ERRORS. THANKS.
If this part of this project goes well, it will help you switch over to War3source:EVO sooner, begin to expand your race collection, and give you time to convert some of your races over to the new code to benefit from the new engine speed!
Please download and TEST this new BACKWARDS COMPATIBILITY ENGINE for old races that run on War3Source 2nd generation files.
Do not use this forever or as a "crutch". You will not benefit from much if you don't plan to update, use the new races, and create new races using the new system.
I am unable to check against all races that have issues or need more backwards support, so please check your logs for errors and report them back. Thanks!
If you don't mind sharing your old race pack files for me to "borrow" and test against, please do post them. Thanks!
I do need "testers" to COMPILE their old races using my backwards compatibility includes / plugin. I am unsure what will happen if you try to just "run" your old plugins without compiling them using only my sourcecode.
The engine update that includes the backwards compatibility later is linked below.
I tested against War3Source 2nd Generation War3Source_011_BloodHunter.sp and other than I'll need to use old translation files for it, it ran perfectly!
It has come to my attention that some of you may think there are "optional" files. I want to make this clear: When you extract from the zip file, the only files that are "optional" are the ones that contain the words "addon" without the quotes in their filenames. You also do not need the scripting directory and files that are in there unless you want to compile for yourself. All other files in the zip are required to run War3Source:EVO. Each zip Jenkins compiles special for each server platform and there should not be any issues between platforms!
After carefull thought and consideration, I have decided to take on hitmany's idea on allowing races to control, switch, and swap skills as they choose. It will be required that the race itself would keep up with these skills and swap them and handle most of that inside the race itself. The engine will keep up with the skill id, skill description, skill short and long names, displaying the skills in the menus, etc, but the race will have to assign these skills to the player and remove them when a player leaves the race. The skill level will stay with the race and the player will not be leveling the skill but only the race's skill of that skill slot.
Overall, the race can still make itself a "traditional" race where its skills can not be swapped with other races or the developer will be able to create flexible races where its skills can be shared across all races.
This is different than generic skill creation as the skill is not assigned to any specific race id, which means the developer better make sure he has created the race in question without any leaks!
This should be a major improvement to War3Source, and will differentiate itself from all other War3Source servers!
I'm working on this right now, and I should have a few prototypes soon.
Here is a preview of the includes file for it:
Spoiler
// War3Source_Engine_SkillsClass.inc
native int War3_CreateNewSkill(char[] skill_longname,char[] skill_shortname,char[] skill_short_description,char[] skill_description);
// set a skill slot with a skill id
native void War3_SetSkillSlot(int client, int skillslot, int newskillid);
// returns get the specific slot for the skill id
native int War3_GetSkillSlot(int client, int skillid);
// returns the slot it finds the skill id (it loops thru all the skill slots, use sparingly)
// returns 0 if none found
native int War3_HasSkillSlot(int client, int skillid);
Also since I prefer private forwarding, I've added this to the private forwards list:
//W3Hook_OnWar3SkillSlotChange
function void (int client, int skillslot, int oldskillid, int newskillid);
So, only the races or other plugins checking for this will have it instead of it being a global forward.