Changes for page Looting System
Last modified by Alexandros Mloukie on 2026/01/26 19:12
From version 3.1
edited by Alexandros Mloukie
on 2026/01/20 01:56
on 2026/01/20 01:56
Change comment:
Deleted image "slice1.png"
To version 14.1
edited by Alexandros Mloukie
on 2026/01/21 17:40
on 2026/01/21 17:40
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 1 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -4,26 +4,44 @@ 4 4 5 5 ---- 6 6 7 -= 1 - Looting Process = 7 +(% class="wikigeneratedid" %) 8 +[[image:Looting Manual.png]] 8 8 9 -= =1.1- Enemy Inventory ==10 += 1 - Enemy Inventory = 10 10 11 - Forlooting to bepossible,theenemiesneed to have their own inventory components,similar to the ones the playerhas. Thisinventoryalsohas tobe populated with the enemydrops,which mustbe**changeablelater usinga designer-friendly approach**.12 +Every enemy in the game needs to have access to their very own inventory. This can probably use the {{info}}MAWInventoryComponent{{/info}} already used for the player, though there are gonna be some extra things to it so a new component might be needed. The inventory will be populated with items on __enemy spawn__ instead of on-death. The items that will occupy the inventory will be defined through a {{success}}Data Table{{/success}}, so designers can easily tweak values later on. 12 12 13 -{{info}} 14 -My suggestion would be the use of a Data Table, where each enemy will have an entry that holds an array of ItemStacks. The appropriate Data Table entry is then used on the enemy's to populate the enemy inventory. 15 -{{/info}} 14 +== 1.1 - Enemy Loot Data Table == 16 16 17 - ==1.2-Loot Display==16 +The loot entries struct that will fill the {{success}}Loot Data Table{{/success}} will be in the following form: 18 18 19 -When interacting with the corpse of an enemy to loot them, both the player and enemy inventories must be displayed side by side: 18 +(% class="table-bordered" %) 19 +(% class="active" %)|=(% style="width: 140px;" %)Variable|=(% style="width: 170px;" %)Type|=(% style="width: 852px;" %)Description 20 +|(% style="width:140px" %)Item|(% style="width:170px" %){{info}}FMAWItemStack{{/info}}|(% style="width:852px" %)The item and amount that will be added to the enemy inventory. 21 +|(% style="width:140px" %)DropWeight|(% style="width:170px" %){{success}}float{{/success}}|(% style="width:852px" %)The chance that this item will be added to the enemy inventory. The value must be between 0 and 1 (mapped to 0% - 100%) 20 20 21 -[[ image:slice1.png||data-xwiki-image-style-border="true"height="319"width="561"]]23 +The enemy uses a {{info}}[[Data Table Row Handle>>https://dev.epicgames.com/documentation/en-us/unreal-engine/API/Runtime/Engine/FDataTableRowHandle]]{{/info}} to define which entry in the Data Table they will be using to populate their inventory. 22 22 23 - == 1.3-Item Movement ==25 +---- 24 24 25 - Withthelootingengaged,theplayercan now move items from the enemy'sinventory to their own.Items are only moved if they can fit in the inventory.27 += 2 - Looting Interaction = 26 26 27 -* Should the player attempt to move an item but ends the interaction with the enemy corpse, the item is not moved and retains its original place on the enemy's inventory. 28 -* Items cannot be moved from the player's inventory to that of the enemy's. One-way only. 29 -* Items cannot be placed onto the toolbar directly from the enemy inventory. 29 +== 2.1 - Staring the Interaction == 30 + 31 +To start looting a target, the player must be within __interaction range__// //of the enemy's corpse, and press the interaction button while looking at said corpse. Once these actions have been completed, the player is presented with the {{warning}}Looting UI{{/warning}} which displays both the player's and the enemy's inventories side by side. 32 + 33 +== 2.2 - Moving Items == 34 + 35 +The player can move items from one inventory to another by __Dragging & Dropping__ the desired item. The looting interaction has 2 types based on the container being looted: 36 + 37 +(% class="table-bordered" %) 38 +(% class="active" %)|=Container Type|=Interaction Style 39 +|One-Way (e.g. Enemy Corpse)|The player can only move items from the enemy's inventory to their own and **not** the other way around. 40 +|Two-Way (e.g. Chest)|The player can move items between **both** inventories, allowing them to off-load items if they wish to in this container. 41 + 42 +Attempting to move an item from one inventory to another, is successful only if that item has enough space in the area of the inventory it has been dropped off. 43 + 44 +(% class="box errormessage" %) 45 +((( 46 +Should the looting get cancelled for **any** reason, then any items currently being held by the mouse are automatically moved back to their previous positions. In essence, an item is moved **only** when the drag & drop process has been successfully completed. 47 +)))
- Looting Manual.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.AlexandrosMloukie - Size
-
... ... @@ -1,0 +1,1 @@ 1 +8.0 MB - Content