Skip to content

Commit

Permalink
Merge pull request #115 from The-Grand-Archives/dev
Browse files Browse the repository at this point in the history
Release v1.15
  • Loading branch information
inuNorii authored Aug 10, 2024
2 parents c318495 + 6939ab7 commit d499d4c
Show file tree
Hide file tree
Showing 95 changed files with 780 additions and 620 deletions.
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
*.bin -text
2 changes: 1 addition & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"clangd.fallbackFlags": [
"-I${workspaceFolder}/resources/include",
"-I${workspaceFolder}/table_files/include",
"-IC:/Program Files/Cheat Engine 7.5/include",
"-xc",
"-std=gnu99"
Expand Down
2 changes: 1 addition & 1 deletion BUILD_ENV
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
TABLE_VERSION=1.14.1
TABLE_VERSION=1.15.0
GAME_VERSION=1.13.0
MIN_CE_VERSION=7.4
18 changes: 17 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,21 @@
# Changelog
## [Unreleased]

## [v1.15.0] - 2024-08-10
### Added
- Support for "key items" in EquipInventoryData header and RemoveItem, getItemIdx, getItemByIdx, isInventoryFull functions
- getInvData function, returns inventory offset, if it's a key item inventory, and inventory size
- by [tremwil](https://github.com/tremwil):
- executeEzStateEvent(id, parameterArray, chrInsHandle), replacing the code for Npc Menus
- by [Dasaav](https://github.com/Dasaav-dsv/):
- getGoodsName, getWeaponName, getProtectorName, getAccessoryName, getMagicName, getArtsName, getNpcName, getPlaceName
### Deprecated
- Npc Menus code
### Removed
- Seamless PvP header
### Fixed
- ItemGib: Container item max quantity counted against its own limit

## [v1.14.1] - 2024-07-30
### Changed
- Supported version to 1.13.0
Expand Down Expand Up @@ -640,7 +655,8 @@
- Custom FPS Limit


[unreleased]: https://github.com/inunorii/Elden-Ring-CT-TGA/compare/v1.14.0...dev
[unreleased]: https://github.com/inunorii/Elden-Ring-CT-TGA/compare/v1.14.1...dev
[v1.14.1]: https://github.com/inunorii/Elden-Ring-CT-TGA/compare/v1.14.0...v1.14.1
[v1.14.0]: https://github.com/inunorii/Elden-Ring-CT-TGA/compare/v1.13.0...v1.14.0
[v1.13.0]: https://github.com/inunorii/Elden-Ring-CT-TGA/compare/v1.12.1...v1.13.0
[v1.12.1]: https://github.com/inunorii/Elden-Ring-CT-TGA/compare/v1.12.0...v1.12.1
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ registerSymbol(EquipInventoryDataIdx)

EquipInventoryDataIdx:
dd 00000000 // Idx
dd 000005D0 // Inv
dd 00000000 // Inv

[DISABLE]
dealloc(EquipInventoryDataIdx)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
<id id="100585"/>
<id id="100586"/>
<id id="100587"/>
<id id="106155"/>
<id id="100588"/>
<id id="100599"/>
<id id="100600"/>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@
<Address>GameDataMan</Address>
<Offsets>
<Offset>readInteger("EquipInventoryDataIdx")*0x18</Offset>
<Offset>10</Offset>
<Offset>readInteger("EquipInventoryDataIdx+4")</Offset>
<Offset>getInvData(readByte("EquipInventoryDataIdx+4"))[2]*0x10+0x10</Offset>
<Offset>getInvData(readByte("EquipInventoryDataIdx+4"))[1]</Offset>
<Offset>8</Offset>
</Offsets>
<x-ce2fs-child-order>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<CheatEntry>
<ID>100591</ID>
<Description>"Item"</Description>
<DropDownListLink>ItemDropdown</DropDownListLink>
<DropDownListLink>ItemDropdownDLC</DropDownListLink>
<ShowAsHex>1</ShowAsHex>
<ShowAsSigned>1</ShowAsSigned>
<VariableType>4 Bytes</VariableType>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,7 @@
<CheatEntry>
<ID>100594</ID>
<Description>"Type"</Description>
<DropDownList ReadOnly="1" DescriptionOnly="1" DisplayValueAsItem="1">0:Weapon
1:Protector
2:Accessory
4:Goods
8:Gem
</DropDownList>
<DropDownListLink>ItemType</DropDownListLink>
<ShowAsSigned>0</ShowAsSigned>
<VariableType>Binary</VariableType>
<BitStart>4</BitStart>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@
<VariableType>4 Bytes</VariableType>
<Address>GameDataMan</Address>
<Offsets>
<Offset>18</Offset>
<Offset>readInteger("EquipInventoryDataIdx+4")</Offset>
<Offset>getInvData(readByte("EquipInventoryDataIdx+4"))[2]*0x10+0x18</Offset>
<Offset>getInvData(readByte("EquipInventoryDataIdx+4"))[1]</Offset>
<Offset>8</Offset>
</Offsets>
</CheatEntry>
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<CheatEntry>
<ID>100587</ID>
<Description>"Inventory Type"</Description>
<DropDownList ReadOnly="1" DescriptionOnly="1" DisplayValueAsItem="1">0:Player
1:Chest
2:Key Items (Player)
3:Key Items (Chest)
</DropDownList>
<ShowAsSigned>0</ShowAsSigned>
<Color>FF8000</Color>
<VariableType>4 Bytes</VariableType>
<Address>EquipInventoryDataIdx+4</Address>
</CheatEntry>
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
<CheatEntry>
<ID>100587</ID>
<Description>"Inventory"</Description>
<DropDownList ReadOnly="1" DescriptionOnly="1" DisplayValueAsItem="1">000005D0:Player
000008D0:Chest
<Description>"Inventory Type"</Description>
<ID>106155</ID>
<DropDownList ReadOnly="1" DescriptionOnly="1" DisplayValueAsItem="1">0:Player
1:Chest
2:Key Items (Player)
3:Key Items (Chest)
</DropDownList>
<ShowAsHex>1</ShowAsHex>
<ShowAsSigned>0</ShowAsSigned>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@
<VariableType>4 Bytes</VariableType>
<Address>GameDataMan</Address>
<Offsets>
<Offset>1C</Offset>
<Offset>readInteger("EquipInventoryDataIdx+4")</Offset>
<Offset>getInvData(readByte("EquipInventoryDataIdx+4"))[2]*0x10+0x1C</Offset>
<Offset>getInvData(readByte("EquipInventoryDataIdx+4"))[1]</Offset>
<Offset>8</Offset>
</Offsets>
</CheatEntry>
Original file line number Diff line number Diff line change
Expand Up @@ -19,5 +19,7 @@
<id id="108247"/>
<id id="108248"/>
<id id="108249"/>
<id id="108253"/>
<id id="108255"/>
</x-ce2fs-child-order>
</CheatEntry>
Original file line number Diff line number Diff line change
@@ -0,0 +1,177 @@
{$lua}
if syntaxcheck then return end

[ENABLE]

local symbols, err = compile('#include "tga/ezstate.h"');
if symbols == nil then
print(err)
error(err)
end

--- @param id integer EzState external event ID
--- @param parameterArray table Array of integer or floating point arguments
--- @param chrInsHandle integer ChrIns handle to build the fake NpcTalkIns with (default -1)
function executeEzStateEvent(id, parameterArray, chrInsHandle);
local allParams = { id }
if parameterArray ~= nil then
for i, v in ipairs(parameterArray) do
allParams[i+1] = v
end
end

local args = allocateMemory(16 * #allParams)
local encoderMap = {
integer = { n = 2, fun = writeInteger },
number = { n = 1, fun = writeFloat }
}

for i, param in ipairs(allParams) do
local encoder = encoderMap[math.type(param)]
if encoder == nil then
deAlloc(args)
local msg = ("executeEzStateEvent: argument %d has unsupported type (%s)"):format(i, type(param))
print(msg)
error(msg)
end
encoder.fun(args + 0x10 * (i - 1), param)
writeInteger(args + 0x10 * (i - 1) + 8, encoder.n)
end

executeCodeEx(0, nil, symbols.ezstate_execute_event, {type=0, value=chrInsHandle or -1}, args, #allParams);
deAlloc(args)
end

EzStateEvent = {
DebugEvent = 0,
TalkToPlayer = 1,
-- InvokeEvent = 2,
StopAttacking = 3,
Attack = 4,
RemoveMyAggro = 5,
-- DisplayOneLineHelp = 6,
TurnToFacePlayer = 7,
ForceEndTalk = 8,
ClearTalkProgressData = 9,
ShowShopMessage = 10,
SetEventFlag = 11,
CloseShopMessage = 12,
-- OpenCampMenu = 13,
-- CloseCampMenu = 14,
ChangeTeamType = 15,
SetDefaultTeamType = 16,
OpenGenericDialog = 17,
ForceCloseGenericDialog = 18,
AddTalkListData = 19,
ClearTalkListData = 20,
-- RequestMoviePlayback = 21,
OpenRegularShop = 22,
OpenRepairShop = 23,
OpenEnhanceShop = 24,
-- OpenHumanityMenu = 25,
-- OpenMagicShop = 26,
-- OpenMiracleShop = 27,
OpenMagicEquip = 28,
-- OpenMiracleEquip = 29,
OpenRepository = 30,
OpenSoul = 31,
CloseMenu = 32,
SetEventFlagRange = 33,
OpenDepository = 34,
ClearTalkActionState = 35,
ClearTalkDisabledState = 36,
SetTalkDisableStateMaxDuration = 37,
SetUpdateDistance = 38,
ClearPlayerDamageInfo = 39,
Lua_BonfireFirstInjectAnim = 40,
StartWarpMenuInit = 41,
StartBonfireAnimLoop = 42,
EndBonfireKindleAnimLoop = 43,
OpenSellShop = 46,
ChangePlayerStat = 47,
OpenEquipmentChangeOfPurposeShop = 48,
CombineMenuFlagAndEventFlag = 49,
RequestSave = 50,
ChangeMotionOffsetID = 51,
PlayerEquipmentQuantityChange = 52,
RequestUnlockTrophy = 53,
-- EnterBonfireEventRange = 54,
SetAquittalCostMessageTag = 55,
SubtractAcquittalCostFromPlayerSouls = 56,
ShuffleRNGSeed = 57,
SetRNGSeed = 58,
ReplaceTool = 59,
-- BreakCovenantPledge = 60,
PlayerRespawn = 61,
GiveSpEffectToPlayer = 62,
ShowGrandioseTextPresentation = 63,
-- AddIzalithRankingPoints = 64,
-- OpenItemAcquisitionMenu = 65,
-- AcquireGestureOld = 66,
ForceCloseMenu = 67,
SetTalkTime = 68,
CollectJustPyromancyFlame = 69,
-- OpenArenaRanking = 70,
ReportConversationEndToHavokBehavior = 71,
OpenConversationChoicesMenu = 76,
StopEventAnimWithoutForcingConversationEnd = 80,
OpenCharaMakeMenu = 81,
OpenChooseQuantityDialog = 82,
ClearQuantityValueOfChooseQuantityDialog = 83,
SetWorkValue = 100,
UpdatePlayerRespawnPoint = 101,
SetMessageTagValue = 102,
TurnCharacterToFaceEntity = 103,
AwardItemLot = 104,
OpenEstusAllotMenu = 105,
-- AddRankingPoints = 106,
-- OpenHollowLevelUpMenu = 107,
EstusAllocationUpdate = 108,
BonfireActivation = 109,
MainBonfireMenuFlag = 110,
OpenTranspositionShop = 111,
SetBonfireMenuData = 112,
ReallocateAttributes = 113,
UndeadMatch = 114,
OpenBonfireMenu = 115,
Unknown116_MatchRelated = 116,
Unknown117_WorldAreaTime = 117,
OpenUnusedShop = 118,
Unknown119 = 119,
Unknown120 = 120,
ClearSpEffectFromPlayer = 121,
Unknown122 = 122,
RequestAnimation = 123,
ClearSpEffectFromEntity = 124,
Unknown125_AiRelated = 125,
Unknown126_EventRelated = 126,
Unknown127_EventRelated = 127,
Unknown128 = 128,
Unknown129 = 129,
OpenPhysickMenu = 130,
AcquireGesture = 131,
Unknown132_FeManRelated = 132,
Unknown133_FeManRelated = 133,
Unknown134 = 134,
OpenDragonCommunionShop = 135,
OpenSpiritTuning = 136,
OpenEquipGreatRune = 137,
Unknown138 = 138,
Unknown139 = 139,
Unknown140_MenuRelated = 140,
Unknown141_PlaylogRelated = 141,
OpenTailoringShop = 142,
OpenAshOfWarShop = 143,
OpenPuppetShop = 144,
Unknown145_OpenUnknownShop = 145,
OpenDupeShop = 146,
SetEventFlagValue = 147,
OpenChampionsEquipmentShop = 148,
Unknown149_EventFlagRelated = 149,
Unknown150_OpenUnknownShop = 150, -- 2 args, like shops
Unknown151_OpenUnknownMenu = 151, -- int, bool, bool, bool
Unknown152 = 152,
Unknown153 = 153,
}

[DISABLE]
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<CheatEntry>
<ID>106161</ID>
<Description>"Auto Revive"</Description>
<ID>108253</ID>
<Description>"EzState_code"</Description>
<VariableType>Auto Assembler Script</VariableType>
</CheatEntry>
Loading

0 comments on commit d499d4c

Please sign in to comment.