// Camera data used for default camera motion and parametersnativevoidCameraSetData(playergroupplayers,stringcameraId);// CatalogsnativeboolCatalogEntryIsDefault(intcatalog,stringentry);nativeintCatalogFieldValueGetAsInt(intcatalog,stringentry,stringfieldPath,intplayer);//--------------------------------------------------------------------------------------------------// Note: The LinkReplace API does not actually search & replace all catalog fields.// It saves the replacement in a separate table so that code setup to handle being replaced can// do the replacement where necessary.//--------------------------------------------------------------------------------------------------nativevoidCatalogLinkReplace(intplayer,intcatalog,stringidA,stringidB);nativestringCatalogLinkReplacement(intplayer,intcatalog,stringid);nativevoidGameSetSeed(intvalue);// Player statesconstintc_playerStateChargesPaused=9;constintc_playerStateCooldownsPaused=10;constintc_playerStateMineralCostIgnored=11;constintc_playerStateVespeneCostIgnored=12;constintc_playerStateTerrazineCostIgnored=13;constintc_playerStateCustomCostIgnored=14;constintc_playerStateDisplayGameResult=15;// StringExternal looks up the given string identifer in the externalized string tablenativetextStringExternalHotkey(strings);nativetextStringExternalAsset(strings);// Unit attributesconstintc_unitAttributeNone=-1;// Base Damage.constintc_unitAttributeShielded=-2;// Damage vs. Shielded Units.// Unit statesconstintc_unitStateDetectable=29;constintc_unitStateRadarable=30;// Unit propertiesconstintc_unitPropLifeArmor=35;// Read-onlyconstintc_unitPropShieldArmor=36;// Read-onlynativeunitUnitAddOnChild(unitinUnit,intinIndex);nativeunitUnitAddOnParent(unitinUnit);// behavior buff flagsconstintc_unitBehaviorFlagRefreshStack=9;// Unit weaponsnativefixedUnitWeaponDamage(unitinUnit,intinIndex,intinAttribute,boolinMaximum);nativefixedUnitWeaponSpeedMultiplier(unitinUnit,intinIndex);// Local Selection Typesconstintc_localSelectionTypeUnknown=-1;constintc_localSelectionTypeControlGroup=0;constintc_localSelectionTypeIdleButton=1;constintc_localSelectionTypePylonButton=2;constintc_localSelectionTypeSelectLarva=3;constintc_localSelectionTypeSelectBuilder=4;constintc_localSelectionTypeAlert=5;constintc_localSelectionTypeHeroPanel=6;constintc_localSelectionTypeInfoPanel=7;constintc_localSelectionTypeWorldPanel=8;nativevoidUIStatusBarOverride(playergroupinPlayers,intgroup);nativevoidUIStatusBarClearOverride(playergroupinPlayers);nativevoidUISetResourceVisible(playergroupinPlayers,intinResource,boolinVisible);nativevoidUISetSelectionTypeEnabled(playergroupinPlayers,intinSelectionType,boolinEnabled);// Unit flagsconstintc_unitFlagShareControl=53;
Changes to existing presets:
// Camera movement eventsconstintc_cameraMoveReasonAny=-1;constintc_cameraMoveReasonAlert=0;constintc_cameraMoveReasonIdleWorker=1;constintc_cameraMoveReasonKeyScroll=2;constintc_cameraMoveReasonMinimap=3;constintc_cameraMoveReasonMouseScroll=4;constintc_cameraMoveReasonSelection=5;constintc_cameraMoveReasonTown=6;constintc_cameraMoveReasonView=7;constintc_cameraMoveReasonZoom=8;// Playersconstintc_maxPlayers=16;// Behavior info flagsconstintc_unitBehaviorFlagHidden=10;
I noticed another change, which forced me to rewrite a part of my AI.
I was using UnitGetPropertyInt with an unused property index to receive the internal unit ID. I used this ID to store unit specific information for the AI, like when the unit was last seen.
However, it seems the 1.3 patch removed the ability to obtain the internal ID. When using an unused property index, the return value from now on is always 0.
I have now started to manually assign unit ID's when units are created, to make sure some parts of my code still work.
// Unit attributes
const int c_unitAttributeNone = -1; // Base Damage.
const int c_unitAttributeShielded = -2; // Damage vs. Shielded Units.
oh shit
*EDIT*
nvm. i thought wrong.
I noticed another change, which forced me to rewrite a part of my AI.
I was using UnitGetPropertyInt with an unused property index to receive the internal unit ID. I used this ID to store unit specific information for the AI, like when the unit was last seen.
However, it seems the 1.3 patch removed the ability to obtain the internal ID. When using an unused property index, the return value from now on is always 0.
I have now started to manually assign unit ID's when units are created, to make sure some parts of my code still work.
Can you upload a full native list? I still use an old version http://paste.sc2mapster.com/1979/ "Date posted 22 Apr 2010". Or tell me where I can find one?
Additions:
Changes to existing presets:
I noticed another change, which forced me to rewrite a part of my AI.
I was using UnitGetPropertyInt with an unused property index to receive the internal unit ID. I used this ID to store unit specific information for the AI, like when the unit was last seen.
However, it seems the 1.3 patch removed the ability to obtain the internal ID. When using an unused property index, the return value from now on is always 0.
I have now started to manually assign unit ID's when units are created, to make sure some parts of my code still work.
Oh well, guess I submitted my post in the wrong place, as I made a paste of the natives a while ago:)
But yeah, they all are nice findings.
UnitParent and child stuff will be useful I think
@Mexaprone: Go
Sorry, Mexa, I had not seen your post yet. I did not copy this from your pastebin, I swear! :)
Ah shit!
Can you upload a full native list? I still use an old version http://paste.sc2mapster.com/1979/ "Date posted 22 Apr 2010". Or tell me where I can find one?
@Arkless: Go
Extract the natives.galaxy file from the patch.SC2Archive MPQ file. The one from 1.3.0 is in the StarCraft 2\Versions\Base18092 folder.
thanks a lot, that really helped!