Amineri Posted July 4, 2013 Share Posted July 4, 2013 I've seen a few people around asking for this type of functionality, or something similar, so I finally got around to making a modlet that makes it happen. This turned out to be a pretty straightforward hex change, although it requires some significant re-configuration of of the ItemBalance entries in the DGC.ini.The mod allows the sale of any item in the game with the following exclusions:Items with 0 or negative cash price. This includes the starter items, captives, and various other items. Basically if you can build it you can sell it.Vehicles. SHIVs, Interceptors, Firestorms, and your Skyranger. There are dismiss buttons for these, except your Skyranger. I think selling your Skyranger could lead to problems....The Skeleton Key itemInterception consumables ... the vanilla code had them in so I just left them in The mod rescales prices so that the list prices for all items in the DGC.ini is the sale price. It does this by making the Cost to manufacture scale from the sale price to +100% of the sale price. This prevents the exploit of manufacturing items to sell on the gray market. Items are always sold at a loss, although with many, many engineers it is possible to come close to breaking even. Note that if the DGC.ini item prices are not adjusted, this mod will double the price to manufacture all items. What the mod does is the following two things:Allow any non-vehicle item with a positive cash price in the DGC.ini to be sold (with exclusions as described above) Adjusts the Engineering price scaling function to scale costs to from 100% to 200% of the DGC.ini iCash value, based on number of Engineers. This was much much simpler than trying to alter the code in the gray market area.Items that are not bought through Engineering should not be altered. This is basically just the regular Interceptor, I think. Note that since Plasma weapons are really expensive, this makes capturing aliens to sell their weapon quite profitable. I'm not quite sure how this could be balanced out... maybe make them cheaper cash-wise but use more alloys/elerium? Not sure. If necessary I could put restrictions preventing the sale of plasma weapons on the gray market. Maybe there is some form of Arms Control oversight body that prevents XCOM from selling them? I know in the OG selling off extra weapons was a noticable source of income. Here's the hex changes... both of them to XComStrategyGame >> XGItemTree : XGItemTree.CanBeSold original hex: header: DD 35 00 00 AB 1F 00 00 00 00 00 00 DA 35 00 00 00 00 00 00 00 00 00 00 DD 35 00 00 00 00 00 00 47 03 00 00 7F B8 00 00 0D 01 00 00 BD 00 00 00 body: 0F 00 DB 35 00 00 1B 09 15 00 00 00 00 00 00 00 DD 35 00 00 4A 16 07 8C 00 84 84 9A 35 B9 02 00 00 C8 02 00 00 00 00 00 DB 35 00 00 26 16 18 21 00 9A 35 B9 02 00 00 C8 02 00 00 00 00 00 DB 35 00 00 2C 02 16 16 18 21 00 9A 35 B9 02 00 00 C8 02 00 00 00 00 00 DB 35 00 00 2C 03 16 16 04 28 07 D4 00 84 84 84 9A 00 DD 35 00 00 2C C0 16 18 0E 00 9A 00 DD 35 00 00 2C 87 16 16 18 0E 00 9A 00 DD 35 00 00 2C 85 16 16 18 0E 00 9A 00 DD 35 00 00 2C 86 16 16 04 28 04 99 35 C4 02 00 00 C8 02 00 00 00 00 10 00 DD 35 00 00 01 66 35 00 00 1D 01 00 00 00 16 04 3A DC 35 00 00 53 new hex: (virtual 0xF1) header: DD 35 00 00 AB 1F 00 00 00 00 00 00 DA 35 00 00 00 00 00 00 00 00 00 00 DD 35 00 00 00 00 00 00 47 03 00 00 7F B8 00 00 F1 00 00 00 BD 00 00 00 body: 0F 00 DB 35 00 00 1B 09 15 00 00 00 00 00 00 00 DD 35 00 00 4A 16 07 42 00 82 99 00 DD 35 00 00 2C 66 16 18 0E 00 98 00 DD 35 00 00 2C 6C 16 16 04 28 07 8A 00 84 84 84 9A 00 DD 35 00 00 2C C0 16 18 0E 00 9A 00 DD 35 00 00 2C 87 16 16 18 0E 00 9A 00 DD 35 00 00 2C 85 16 16 18 0E 00 9A 00 DD 35 00 00 2C 86 16 16 04 28 04 99 35 C4 02 00 00 C8 02 00 00 00 00 10 00 DD 35 00 00 01 66 35 00 00 1D 01 00 00 00 16 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 04 3A DC 35 00 00 53 ----------------------------- XGItemTree.ScaleCost original hex: header: 9A 35 00 00 AB 1F 00 00 00 00 00 00 97 35 00 00 00 00 00 00 00 00 00 00 9A 35 00 00 00 00 00 00 2D 02 00 00 B0 97 00 00 4A 01 00 00 DA 00 00 00 body: 07 28 00 9A 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 1D FF FF FF FF 16 04 0B 0F 00 98 35 00 00 38 3F 19 1B 75 0B 00 00 00 00 00 00 16 0A 00 56 29 00 00 00 1B C1 0F 00 00 00 00 00 00 16 07 47 01 B3 00 98 35 00 00 38 3F 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 16 0F 00 99 35 00 00 AC 38 3F 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 00 98 35 00 00 16 0F 00 99 35 00 00 AB AE 00 99 35 00 00 38 3F 26 16 1E 00 00 00 3F 16 9F 35 C4 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 9F 35 C2 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 9F 35 C3 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 04 0B 53 new hex: (virtual 0x146) (scale from +40% to +100% of sell price) header: 9A 35 00 00 AB 1F 00 00 00 00 00 00 97 35 00 00 00 00 00 00 00 00 00 00 9A 35 00 00 00 00 00 00 2D 02 00 00 B0 97 00 00 46 01 00 00 DA 00 00 00 body: 07 28 00 9A 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 1D FF FF FF FF 16 04 0B 0F 00 98 35 00 00 38 3F 19 1B 75 0B 00 00 00 00 00 00 16 0A 00 56 29 00 00 00 1B C1 0F 00 00 00 00 00 00 16 07 43 01 B3 00 98 35 00 00 38 3F 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 16 0F 00 99 35 00 00 AB 1E 9A 99 19 3F AC 38 3F 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 00 98 35 00 00 16 16 B8 00 99 35 00 00 1E 33 33 B3 3F 16 0B 0B 0B 0B 9F 35 C4 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 9F 35 C2 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 9F 35 C3 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 04 0B 53 new hex: (virtual 0x146) (scale from +0% to +100% of sell price) header: 9A 35 00 00 AB 1F 00 00 00 00 00 00 97 35 00 00 00 00 00 00 00 00 00 00 9A 35 00 00 00 00 00 00 2D 02 00 00 B0 97 00 00 46 01 00 00 DA 00 00 00 body: 07 28 00 9A 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 1D FF FF FF FF 16 04 0B 0F 00 98 35 00 00 38 3F 19 1B 75 0B 00 00 00 00 00 00 16 0A 00 56 29 00 00 00 1B C1 0F 00 00 00 00 00 00 16 07 43 01 B3 00 98 35 00 00 38 3F 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 16 0F 00 99 35 00 00 AB 1E 00 00 80 3F AC 38 3F 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 00 98 35 00 00 16 16 B8 00 99 35 00 00 1E 00 00 80 3F 16 0B 0B 0B 0B 9F 35 C4 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 9F 35 C2 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 9F 35 C3 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 04 0B 53 I included two versions. One that scales from +0% to +100%, like in vanilla, and one that scales from +40% to +100%, which makes Engineers a little less effective and items generally a little more expensive. At best the item can be sold for a noticable loss. ------------------------------ My intention when making this mod was to make the early item choices a bit more attractive. As it is you spend resources on building items like laser rifles, nanofiber vests, carapace armor, etc. Eventually your tech moves on to better gear, which is needed in order to survive the later tougher aliens. This creates a tendency (even in me!) to not want to "waste" resources on those early items so that more can be spent on later items. With this mod at least some of the cash spent on creating items can later be recovered by selling the items on the gray market (for those items that don't end up with FC Requests). I'll be interested to see what people do with it, though ... Link to comment Share on other sites More sharing options...
Amineri Posted July 4, 2013 Author Share Posted July 4, 2013 NOTE : I just thought of something quite critical. The above mod will only work if some of the changes in the "New Item Mod" are also added. Specifically, the changes to the claim system have to be included. ------ This is because the old system kept equipped items marked in storage, but checked them off against a 'claimed item' array. This will allow items that are currently equipped to soldiers to be sold in the gray market, and the items will continue to be usable by the soldier. Once the item is released, the item will not be able to be re-equipped unless there are sufficient items remaining. The new system in the "New Item Mod" removes the claim array and simply removes claimed items from storage. This prevents items which soldiers have equipped from being sold in the Gray Market. The general "new item mod" is here : http://wiki.tesnexus.com/index.php/Additional_Items_Mod_XCOM:EU_-_2012 -- It's still somewhat of a WIP overall. The particular part that has to be installed for this to work is : http://wiki.tesnexus.com/index.php/Claim_and_Perk_File_Changes_Additional_Items_Mod_XCOM:EU_-_2012 The hex changes 1 - 4 should be installed if working with a vanilla game. (Change 5 assumes some other changes made to the BuildItems function, and is used to set the perk that a given item will grant the soldier upon claiming).These changes will alter the claim system but not enable the "perk-granting item" feature -- that requires additional hex changes. Link to comment Share on other sites More sharing options...
Bertilsson Posted July 4, 2013 Share Posted July 4, 2013 (edited) A somewhat semi-related question, just out of curiosity... Do you think it is possible in a future mod to limit engineers to respect some basic principles?* Building different items in parallell is not faster.* Building multiple copies of an item takes longer time than building a single one.* More engineers can build faster than few (I think that one is already in there for some items, or is it only cost reduction?). A crude, probably not so fun, way to achive this would be to basically disable the build queue while something else than buildings is already in there and lock the number of units to build to 1. In addition it would also be necessary to modify and re-balance all build times. Edited July 4, 2013 by Bertilsson Link to comment Share on other sites More sharing options...
Amineri Posted July 4, 2013 Author Share Posted July 4, 2013 As I recall, Apocalypse had this sort of idea in mind. Each item took a number of "engineer-hours" to complete. Each item could only be assigned to be built in one workshop. Each workshop had a limit to the number of Engineers assigned (I think 10 for normal and 20 for the large one later unlockable). Each workshop had its own build queue of items (multiples of the same item were queue one at a time). While a decent model it added a fair bit of micromanagement which has been streamlined away in the curren version. Engineers provide a completely different benefit (required number to build, reduction in cash / alloy / elerium costs). I think that in general there really should be some sort of limit placed on the number of engineers that can build an item. "Nine women can't make a baby in a month". However, the current interface really doesn't allow this at all. There are some remnant clues that the engineer build system used to be different (a note about item-building stalling because of lack of engineers). I think that it used to be that the number of engineers was how many would be assigned from the pool to work on item / foundry project being built. They would then take the specified amount of time. The limit on the number of projects was the number of engineers you had, plus how many engineers each of those projects required. I'm not sure if this system. I'm referencing this line of localization text: m_strNoteBuildStalled="Item manufacturing is currently stalled, as there are no engineers available to work on new items." It might be possible to re-build this functionality, but I feel like some thought is in order as to how it should work before I dive into the code. Link to comment Share on other sites More sharing options...
Amineri Posted July 4, 2013 Author Share Posted July 4, 2013 So based on some feedback I'm making some changes to this mod. Adding one additional hex change to XGItemTree.GetItemSellPrice. This allows for installation of the mod without making any changes to the DGC.ini BalanceItem entries. Item manufacture prices are scaled to 50% to 100% of the DGC iCash values (or 70% to 100% if preferred), consistent with the vanilla setting. Manufactured items (items with iTime != -1) can be sold for 50% of the DGC iCash value (so always less than manufactured). Collected artifacts (items with iTime == -1) are sold for 100% of the DGC iCash value (consistent with the vanilla DGC values and the vanilla code for the gray market) Collectable plasma weapons have a special exception that allows for a further reduction in sale price for these items. Default is set to 50% (so total 25% of DGC iCash value). ----------------- New hex code: All Items Sellable Hex --------------------------------------------------- XGItemTree.ScaleCost original hex: header: 9A 35 00 00 AB 1F 00 00 00 00 00 00 97 35 00 00 00 00 00 00 00 00 00 00 9A 35 00 00 00 00 00 00 2D 02 00 00 B0 97 00 00 4A 01 00 00 DA 00 00 00 body: 07 28 00 9A 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 1D FF FF FF FF 16 04 0B 0F 00 98 35 00 00 38 3F 19 1B 75 0B 00 00 00 00 00 00 16 0A 00 56 29 00 00 00 1B C1 0F 00 00 00 00 00 00 16 07 47 01 B3 00 98 35 00 00 38 3F 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 16 0F 00 99 35 00 00 AC 38 3F 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 00 98 35 00 00 16 0F 00 99 35 00 00 AB AE 00 99 35 00 00 38 3F 26 16 1E 00 00 00 3F 16 9F 35 C4 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 9F 35 C2 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 9F 35 C3 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 04 0B 53 new hex: (virtual 0x146) (scale from 70% to 100% of DGC iCash field) header: 9A 35 00 00 AB 1F 00 00 00 00 00 00 97 35 00 00 00 00 00 00 00 00 00 00 9A 35 00 00 00 00 00 00 2D 02 00 00 B0 97 00 00 46 01 00 00 DA 00 00 00 body: 07 28 00 9A 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 1D FF FF FF FF 16 04 0B 0F 00 98 35 00 00 38 3F 19 1B 75 0B 00 00 00 00 00 00 16 0A 00 56 29 00 00 00 1B C1 0F 00 00 00 00 00 00 16 07 43 01 B3 00 98 35 00 00 38 3F 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 16 0F 00 99 35 00 00 AB 1E 9A 99 99 3E AC 38 3F 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 00 98 35 00 00 16 16 B8 00 99 35 00 00 1E 34 33 33 3F 16 0B 0B 0B 0B 9F 35 C4 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 9F 35 C2 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 9F 35 C3 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 04 0B 53 new hex: (virtual 0x146) (scale from 50% to 100% of DGC iCash field) header: 9A 35 00 00 AB 1F 00 00 00 00 00 00 97 35 00 00 00 00 00 00 00 00 00 00 9A 35 00 00 00 00 00 00 2D 02 00 00 B0 97 00 00 46 01 00 00 DA 00 00 00 body: 07 28 00 9A 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 1D FF FF FF FF 16 04 0B 0F 00 98 35 00 00 38 3F 19 1B 75 0B 00 00 00 00 00 00 16 0A 00 56 29 00 00 00 1B C1 0F 00 00 00 00 00 00 16 07 43 01 B3 00 98 35 00 00 38 3F 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 16 0F 00 99 35 00 00 AB 1E 00 00 00 3F AC 38 3F 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 00 98 35 00 00 16 16 B8 00 99 35 00 00 1E 00 00 00 3F 16 0B 0B 0B 0B 9F 35 C4 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 9F 35 C2 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 9F 35 C3 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 04 0B 53 ----------------------------------------------------- XGItemTree.GetItemSellPrice original hex: header: E4 35 00 00 AB 1F 00 00 00 00 00 00 E1 35 00 00 00 00 00 00 00 00 00 00 E4 35 00 00 00 00 00 00 64 03 00 00 02 BD 00 00 DA 00 00 00 96 00 00 00 body: 07 5B 00 9A 35 C1 02 00 00 C8 02 00 00 00 00 10 38 3A 00 E4 35 00 00 01 66 35 00 00 1D FF FF FF FF 16 04 35 C4 02 00 00 C8 02 00 00 00 00 10 38 3A 00 E4 35 00 00 01 66 35 00 00 07 7D 00 9A 38 3A 00 E4 35 00 00 38 3A 24 AC 16 04 1B 7F 0E 00 00 00 00 00 00 16 06 93 00 07 93 00 9A 38 3A 00 E4 35 00 00 38 3A 24 69 16 04 25 0F 00 E2 35 00 00 35 C4 02 00 00 C8 02 00 00 00 00 10 38 3A 00 E4 35 00 00 01 66 35 00 00 04 00 E2 35 00 00 04 3A E3 35 00 00 53 original hex: (virtual 0xD6) header: E4 35 00 00 AB 1F 00 00 00 00 00 00 E1 35 00 00 00 00 00 00 00 00 00 00 E4 35 00 00 00 00 00 00 64 03 00 00 02 BD 00 00 D6 00 00 00 96 00 00 00 body: 0F 00 E2 35 00 00 35 C4 02 00 00 C8 02 00 00 00 00 10 38 3A 00 E4 35 00 00 01 66 35 00 00 07 74 00 9B 35 C1 02 00 00 C8 02 00 00 00 00 10 38 3A 00 E4 35 00 00 01 66 35 00 00 1D FF FF FF FF 16 9F 00 E2 35 00 00 1E 00 00 00 3F 16 07 BE 00 84 82 99 38 3A 00 E4 35 00 00 2C 0D 16 18 10 00 98 38 3A 00 E4 35 00 00 2C 0F 16 16 18 10 00 9A 38 3A 00 E4 35 00 00 2C 11 16 16 9F 00 E2 35 00 00 1E 00 00 00 3F 16 04 00 E2 35 00 00 0B 0B 0B 04 3A E3 35 00 00 53 -------------------------------- XGItemTree.CanBeSold original hex: header: DD 35 00 00 AB 1F 00 00 00 00 00 00 DA 35 00 00 00 00 00 00 00 00 00 00 DD 35 00 00 00 00 00 00 47 03 00 00 7F B8 00 00 0D 01 00 00 BD 00 00 00 body: 0F 00 DB 35 00 00 1B 09 15 00 00 00 00 00 00 00 DD 35 00 00 4A 16 07 8C 00 84 84 9A 35 B9 02 00 00 C8 02 00 00 00 00 00 DB 35 00 00 26 16 18 21 00 9A 35 B9 02 00 00 C8 02 00 00 00 00 00 DB 35 00 00 2C 02 16 16 18 21 00 9A 35 B9 02 00 00 C8 02 00 00 00 00 00 DB 35 00 00 2C 03 16 16 04 28 07 D4 00 84 84 84 9A 00 DD 35 00 00 2C C0 16 18 0E 00 9A 00 DD 35 00 00 2C 87 16 16 18 0E 00 9A 00 DD 35 00 00 2C 85 16 16 18 0E 00 9A 00 DD 35 00 00 2C 86 16 16 04 28 04 99 35 C4 02 00 00 C8 02 00 00 00 00 10 00 DD 35 00 00 01 66 35 00 00 1D 01 00 00 00 16 04 3A DC 35 00 00 53 new hex: (virtual 0xF1) header: DD 35 00 00 AB 1F 00 00 00 00 00 00 DA 35 00 00 00 00 00 00 00 00 00 00 DD 35 00 00 00 00 00 00 47 03 00 00 7F B8 00 00 F1 00 00 00 BD 00 00 00 body: 0F 00 DB 35 00 00 1B 09 15 00 00 00 00 00 00 00 DD 35 00 00 4A 16 07 42 00 82 99 00 DD 35 00 00 2C 66 16 18 0E 00 98 00 DD 35 00 00 2C 6C 16 16 04 28 07 8A 00 84 84 84 9A 00 DD 35 00 00 2C C0 16 18 0E 00 9A 00 DD 35 00 00 2C 87 16 16 18 0E 00 9A 00 DD 35 00 00 2C 85 16 16 18 0E 00 9A 00 DD 35 00 00 2C 86 16 16 04 28 04 99 35 C4 02 00 00 C8 02 00 00 00 00 10 00 DD 35 00 00 01 66 35 00 00 1D 01 00 00 00 16 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 04 3A DC 35 00 00 53 Decompiled functions : XGItemTree.CanBeSold: function bool CanBeSold(int iItem) { local TItem kItem; kItem = Item(iItem); if((iItem >= 102) && iItem <= 108) { return false; } if((((iItem == 192) || iItem == 135) || iItem == 133) || iItem == 134) { return false; } return m_arrItems[iItem].iCash >= 1; //return ReturnValue; } XGItemTree.ScaleCost: function ScaleCost(out TItem kItem) { local float fScale, fEngineers; if(kItem.iMaxEngineers == -1) { return; } fEngineers = float(ENGINEERING().GetNumEngineersAvailable()); if(fEngineers >= float(kItem.iMaxEngineers)) { fScale = 0.50 * (float(kItem.iMaxEngineers) / fEngineers); fScale += 0.50; kItem.iCash *= fScale; kItem.iAlloy *= fScale; kItem.iElerium *= fScale; } //return; } XGItemTree.GetItemSalePrice: function int GetItemSalePrice(XComGame.XGGameData.EItemType eItem) { local int iManufactureCost; iManufactureCost = m_arrItems[eItem].iCash; if(m_arrItems[eItem].iHours != -1) { iManufactureCost *= 0.50; } if(((eItem >= 13) && eItem <= 15) || eItem == 17) { iManufactureCost *= 0.50; } return iManufactureCost; //return ReturnValue; } Link to comment Share on other sites More sharing options...
johnnylump Posted July 4, 2013 Share Posted July 4, 2013 Couldn't get a Steam image to load up here, so I posted it here: http://forums.2kgames.com/showthread.php?212536-Mod-Release-Long-War/page4 Link to comment Share on other sites More sharing options...
TheOldOne822 Posted July 5, 2013 Share Posted July 5, 2013 Would it be possible to also make all items take time that way it doesn't matter as much if you can sell something for more than it costs. Changing iTime in the DGC.ini doesn't work for some. Link to comment Share on other sites More sharing options...
Amineri Posted July 13, 2013 Author Share Posted July 13, 2013 So, there is a slight glitch in the game in that the UpdateList() call doesn't get made except during Init (so when loading a game or returning from a tactical mission) and after an item is sold. Manufacturing new items and unequipping items doesn't update the list. So, immediately after manufacturing an item, it will not appear in the Gray Market list. Likewise, if all items of a type are equipped to soldiers when the game is loaded (or when returning from a mission), then the item will not appear in the gray market item list. Workarounds:1) Save and reload the game to refresh the list2) Sell a single item (e.g. sectoid corpse, weapon fragment) I'll work on adding some additional calls to UpdateList() so that it refreshes the list more frequently. ------------------------- Poking around at grey market stuff, I discovered that there is a 5th option at least partially coded into the Engineering Build UI In XGEngineeringUI.UpdateMainMenu is the code that builds the Build Item / Build Facility / Foundry options : if(Game().m_bDebugStart || ENGINEERING().m_bCanBuildItems) { m_arrMenuOptions.AddItem(1); } if(Game().m_bDebugStart || ENGINEERING().m_bCanBuildFacilities) { m_arrMenuOptions.AddItem(2); } if(HQ().HasFacility(11)) { m_arrMenuOptions.AddItem(4); } Build Items is option 1Build Facilities is option 2Foundry is option 4 However, later on in the option scanning portion is the code: if(m_arrMenuOptions[iMenuOption] == 5) { kOption.strText = m_strOptGreyMarket; kOption.iState = 0; kOption.strHelp = m_strHelpGreyMarket; } This is an 5th option (and I have no idea what option 3 was supposed to be) The localization text for these two strings is still in the game: m_strOptGreyMarket=Visit the Gray Marketm_strHelpGreyMarket=Sell surplus items to the Council Countries Am digging into adding the Gray Market back in to the Engineering Build UI, just so there is a second place to access it from. Will post more as I get the details figured out. Link to comment Share on other sites More sharing options...
Amineri Posted July 13, 2013 Author Share Posted July 13, 2013 Here is version 2 of the modlet. Fixes issue where newly built or newly unequipped items do not show up in Gray Market Adds access to Gray Market from Engineering Main Menu -- Gray Market can be accessed through either Engineering or the Situation Room Here is the complete set of hex changes to implement the modlet : All Items Sellable Hex --------------------------------------------------- XGItemTree.ScaleCost original hex: header: 9A 35 00 00 AB 1F 00 00 00 00 00 00 97 35 00 00 00 00 00 00 00 00 00 00 9A 35 00 00 00 00 00 00 2D 02 00 00 B0 97 00 00 4A 01 00 00 DA 00 00 00 body: 07 28 00 9A 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 1D FF FF FF FF 16 04 0B 0F 00 98 35 00 00 38 3F 19 1B 75 0B 00 00 00 00 00 00 16 0A 00 56 29 00 00 00 1B C1 0F 00 00 00 00 00 00 16 07 47 01 B3 00 98 35 00 00 38 3F 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 16 0F 00 99 35 00 00 AC 38 3F 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 00 98 35 00 00 16 0F 00 99 35 00 00 AB AE 00 99 35 00 00 38 3F 26 16 1E 00 00 00 3F 16 9F 35 C4 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 9F 35 C2 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 9F 35 C3 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 04 0B 53 Long War 1.9 beta hex: header: 9A 35 00 00 AB 1F 00 00 00 00 00 00 97 35 00 00 00 00 00 00 00 00 00 00 9A 35 00 00 00 00 00 00 2D 02 00 00 B0 97 00 00 4A 01 00 00 DA 00 00 00 body: 07 28 00 9A 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 1D FF FF FF FF 16 04 0B 0F 00 98 35 00 00 38 3F 19 1B 75 0B 00 00 00 00 00 00 16 0A 00 56 29 00 00 00 1B C1 0F 00 00 00 00 00 00 16 07 47 01 B3 00 98 35 00 00 38 3F 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 16 0F 00 99 35 00 00 AC 38 3F 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 00 98 35 00 00 16 0F 00 99 35 00 00 AB AE 00 99 35 00 00 38 3F 26 16 1E 1F 85 32 3F 16 9F 35 C4 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 9F 35 C2 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 9F 35 C3 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 04 0B 53 new hex: (virtual 0x146) (scale from 70% to 100% of DGC iCash field) header: 9A 35 00 00 AB 1F 00 00 00 00 00 00 97 35 00 00 00 00 00 00 00 00 00 00 9A 35 00 00 00 00 00 00 2D 02 00 00 B0 97 00 00 46 01 00 00 DA 00 00 00 body: 07 28 00 9A 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 1D FF FF FF FF 16 04 0B 0F 00 98 35 00 00 38 3F 19 1B 75 0B 00 00 00 00 00 00 16 0A 00 56 29 00 00 00 1B C1 0F 00 00 00 00 00 00 16 07 43 01 B3 00 98 35 00 00 38 3F 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 16 0F 00 99 35 00 00 AB 1E 9A 99 99 3E AC 38 3F 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 00 98 35 00 00 16 16 B8 00 99 35 00 00 1E 34 33 33 3F 16 0B 0B 0B 0B 9F 35 C4 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 9F 35 C2 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 9F 35 C3 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 04 0B 53 new hex: (virtual 0x146) (scale from 50% to 100% of DGC iCash field) header: 9A 35 00 00 AB 1F 00 00 00 00 00 00 97 35 00 00 00 00 00 00 00 00 00 00 9A 35 00 00 00 00 00 00 2D 02 00 00 B0 97 00 00 46 01 00 00 DA 00 00 00 body: 07 28 00 9A 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 1D FF FF FF FF 16 04 0B 0F 00 98 35 00 00 38 3F 19 1B 75 0B 00 00 00 00 00 00 16 0A 00 56 29 00 00 00 1B C1 0F 00 00 00 00 00 00 16 07 43 01 B3 00 98 35 00 00 38 3F 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 16 0F 00 99 35 00 00 AB 1E 00 00 00 3F AC 38 3F 35 C0 02 00 00 C8 02 00 00 00 00 48 9A 35 00 00 00 98 35 00 00 16 16 B8 00 99 35 00 00 1E 00 00 00 3F 16 0B 0B 0B 0B 9F 35 C4 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 9F 35 C2 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 9F 35 C3 02 00 00 C8 02 00 00 00 01 48 9A 35 00 00 00 99 35 00 00 16 04 0B 53 ----------------------------------------------------- XGItemTree.GetItemSellPrice original hex: header: E4 35 00 00 AB 1F 00 00 00 00 00 00 E1 35 00 00 00 00 00 00 00 00 00 00 E4 35 00 00 00 00 00 00 64 03 00 00 02 BD 00 00 DA 00 00 00 96 00 00 00 body: 07 5B 00 9A 35 C1 02 00 00 C8 02 00 00 00 00 10 38 3A 00 E4 35 00 00 01 66 35 00 00 1D FF FF FF FF 16 04 35 C4 02 00 00 C8 02 00 00 00 00 10 38 3A 00 E4 35 00 00 01 66 35 00 00 07 7D 00 9A 38 3A 00 E4 35 00 00 38 3A 24 AC 16 04 1B 7F 0E 00 00 00 00 00 00 16 06 93 00 07 93 00 9A 38 3A 00 E4 35 00 00 38 3A 24 69 16 04 25 0F 00 E2 35 00 00 35 C4 02 00 00 C8 02 00 00 00 00 10 38 3A 00 E4 35 00 00 01 66 35 00 00 04 00 E2 35 00 00 04 3A E3 35 00 00 53 original hex: (virtual 0xD6) header: E4 35 00 00 AB 1F 00 00 00 00 00 00 E1 35 00 00 00 00 00 00 00 00 00 00 E4 35 00 00 00 00 00 00 64 03 00 00 02 BD 00 00 D6 00 00 00 96 00 00 00 body: 0F 00 E2 35 00 00 35 C4 02 00 00 C8 02 00 00 00 00 10 38 3A 00 E4 35 00 00 01 66 35 00 00 07 74 00 9B 35 C1 02 00 00 C8 02 00 00 00 00 10 38 3A 00 E4 35 00 00 01 66 35 00 00 1D FF FF FF FF 16 9F 00 E2 35 00 00 1E 00 00 00 3F 16 07 BE 00 84 82 99 38 3A 00 E4 35 00 00 2C 0D 16 18 10 00 98 38 3A 00 E4 35 00 00 2C 0F 16 16 18 10 00 9A 38 3A 00 E4 35 00 00 2C 11 16 16 9F 00 E2 35 00 00 1E 00 00 00 3F 16 04 00 E2 35 00 00 0B 0B 0B 04 3A E3 35 00 00 53 -------------------------------- XGItemTree.CanBeSold original hex: header: DD 35 00 00 AB 1F 00 00 00 00 00 00 DA 35 00 00 00 00 00 00 00 00 00 00 DD 35 00 00 00 00 00 00 47 03 00 00 7F B8 00 00 0D 01 00 00 BD 00 00 00 body: 0F 00 DB 35 00 00 1B 09 15 00 00 00 00 00 00 00 DD 35 00 00 4A 16 07 8C 00 84 84 9A 35 B9 02 00 00 C8 02 00 00 00 00 00 DB 35 00 00 26 16 18 21 00 9A 35 B9 02 00 00 C8 02 00 00 00 00 00 DB 35 00 00 2C 02 16 16 18 21 00 9A 35 B9 02 00 00 C8 02 00 00 00 00 00 DB 35 00 00 2C 03 16 16 04 28 07 D4 00 84 84 84 9A 00 DD 35 00 00 2C C0 16 18 0E 00 9A 00 DD 35 00 00 2C 87 16 16 18 0E 00 9A 00 DD 35 00 00 2C 85 16 16 18 0E 00 9A 00 DD 35 00 00 2C 86 16 16 04 28 04 99 35 C4 02 00 00 C8 02 00 00 00 00 10 00 DD 35 00 00 01 66 35 00 00 1D 01 00 00 00 16 04 3A DC 35 00 00 53 new hex: (virtual 0xF1) header: DD 35 00 00 AB 1F 00 00 00 00 00 00 DA 35 00 00 00 00 00 00 00 00 00 00 DD 35 00 00 00 00 00 00 47 03 00 00 7F B8 00 00 F1 00 00 00 BD 00 00 00 body: 0F 00 DB 35 00 00 1B 09 15 00 00 00 00 00 00 00 DD 35 00 00 4A 16 07 42 00 82 99 00 DD 35 00 00 2C 66 16 18 0E 00 98 00 DD 35 00 00 2C 6C 16 16 04 28 07 8A 00 84 84 84 9A 00 DD 35 00 00 2C C0 16 18 0E 00 9A 00 DD 35 00 00 2C 87 16 16 18 0E 00 9A 00 DD 35 00 00 2C 85 16 16 18 0E 00 9A 00 DD 35 00 00 2C 86 16 16 04 28 04 99 35 C4 02 00 00 C8 02 00 00 00 00 10 00 DD 35 00 00 01 66 35 00 00 1D 01 00 00 00 16 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 04 3A DC 35 00 00 53 ------------------------------------- UIGreyMarket.OnReceiveFocus to re-build item list and reset view to 0 original hex: header: F0 0A 00 00 AB 1F 00 00 00 00 00 00 EF 0A 00 00 00 00 00 00 00 00 00 00 F0 0A 00 00 00 00 00 00 29 01 00 00 7A 24 00 00 4C 03 00 00 54 02 00 00 body: 19 19 2E 87 20 00 00 19 01 16 FB FF FF 09 00 B2 FA FF FF 00 01 B2 FA FF FF 09 00 99 1E 00 00 00 01 99 1E 00 00 0A 00 00 00 00 00 00 1B C0 05 00 00 00 00 00 00 16 19 19 2E 87 20 00 00 19 01 16 FB FF FF 09 00 B2 FA FF FF 00 01 B2 FA FF FF 09 00 99 1E 00 00 00 01 99 1E 00 00 1D 00 00 00 00 00 00 1B 87 24 00 00 00 00 00 00 43 05 20 00 00 00 00 00 00 00 00 00 00 4A 4A 16 07 49 03 97 36 19 1B 91 0F 00 00 00 00 00 00 16 09 00 41 31 00 00 00 01 41 31 00 00 25 16 0F 00 F0 0A 00 00 19 19 2E 87 20 00 00 19 01 16 FB FF FF 09 00 B2 FA FF FF 00 01 B2 FA FF FF 09 00 99 1E 00 00 00 01 99 1E 00 00 09 00 10 18 00 00 00 01 10 18 00 00 07 5E 02 19 01 15 FB FF FF 0A 00 88 FF FF FF 00 1B 98 14 00 00 00 00 00 00 16 19 00 F0 0A 00 00 18 00 00 00 00 00 00 1B B4 23 00 00 00 00 00 00 1F 58 43 6F 6D 42 75 74 74 6F 6E 50 43 00 16 19 00 F0 0A 00 00 9E 00 00 00 00 00 00 1B 90 00 00 00 00 00 00 00 EB 35 E1 F9 FF FF 6F FA FF FF 00 00 35 34 31 00 00 35 31 00 00 00 00 19 1B 91 0F 00 00 00 00 00 00 16 09 00 40 31 00 00 00 01 40 31 00 00 16 1F 00 43 E8 1F 00 00 00 00 00 00 00 00 00 00 9A 38 3A 35 33 31 00 00 35 31 00 00 00 00 19 1B 91 0F 00 00 00 00 00 00 16 09 00 40 31 00 00 00 01 40 31 00 00 38 3A 24 01 16 16 19 00 F0 0A 00 00 0C 00 00 00 00 00 00 1B B4 23 00 00 00 00 00 00 1F 00 16 06 49 03 19 00 F0 0A 00 00 D6 00 00 00 00 00 00 1B 90 00 00 00 00 00 00 00 12 20 A1 FE FF FF 86 00 22 FA FF FF 00 1B 55 0F 00 00 00 00 00 00 EB 35 E1 F9 FF FF 6F FA FF FF 00 00 35 34 31 00 00 35 31 00 00 00 00 19 1B 91 0F 00 00 00 00 00 00 16 09 00 40 31 00 00 00 01 40 31 00 00 16 38 3A 35 33 31 00 00 35 31 00 00 00 00 19 1B 91 0F 00 00 00 00 00 00 16 09 00 40 31 00 00 00 01 40 31 00 00 4A 16 12 20 B4 FE FF FF 0A 00 48 FA FF FF 00 1B 76 0E 00 00 00 00 00 00 16 43 E8 1F 00 00 00 00 00 00 00 00 00 00 4A 16 04 0B 53 new hex: header: F0 0A 00 00 AB 1F 00 00 00 00 00 00 EF 0A 00 00 00 00 00 00 00 00 00 00 F0 0A 00 00 00 00 00 00 29 01 00 00 7A 24 00 00 4C 03 00 00 54 02 00 00 body: 19 19 2E 87 20 00 00 19 01 16 FB FF FF 09 00 B2 FA FF FF 00 01 B2 FA FF FF 09 00 99 1E 00 00 00 01 99 1E 00 00 0A 00 00 00 00 00 00 1B C0 05 00 00 00 00 00 00 16 19 19 2E 87 20 00 00 19 01 16 FB FF FF 09 00 B2 FA FF FF 00 01 B2 FA FF FF 09 00 99 1E 00 00 00 01 99 1E 00 00 1D 00 00 00 00 00 00 1B 87 24 00 00 00 00 00 00 43 05 20 00 00 00 00 00 00 00 00 00 00 4A 4A 16 19 1B 91 0F 00 00 00 00 00 00 16 0A 00 00 00 00 00 00 1B E2 2B 00 00 00 00 00 00 16 0F 01 9C 0A 00 00 25 0B 0B 07 49 03 97 36 19 1B 91 0F 00 00 00 00 00 00 16 09 00 41 31 00 00 00 01 41 31 00 00 25 16 0F 00 F0 0A 00 00 19 19 2E 87 20 00 00 19 01 16 FB FF FF 09 00 B2 FA FF FF 00 01 B2 FA FF FF 09 00 99 1E 00 00 00 01 99 1E 00 00 09 00 10 18 00 00 00 01 10 18 00 00 07 5E 02 19 01 15 FB FF FF 0A 00 88 FF FF FF 00 1B 98 14 00 00 00 00 00 00 16 19 00 F0 0A 00 00 9E 00 00 00 00 00 00 1B 90 00 00 00 00 00 00 00 EB 35 E1 F9 FF FF 6F FA FF FF 00 00 35 34 31 00 00 35 31 00 00 00 00 19 1B 91 0F 00 00 00 00 00 00 16 09 00 40 31 00 00 00 01 40 31 00 00 16 1F 00 43 E8 1F 00 00 00 00 00 00 00 00 00 00 9A 38 3A 35 33 31 00 00 35 31 00 00 00 00 19 1B 91 0F 00 00 00 00 00 00 16 09 00 40 31 00 00 00 01 40 31 00 00 38 3A 24 01 16 16 19 00 F0 0A 00 00 0C 00 00 00 00 00 00 1B B4 23 00 00 00 00 00 00 1F 00 16 06 49 03 19 00 F0 0A 00 00 D6 00 00 00 00 00 00 1B 90 00 00 00 00 00 00 00 12 20 A1 FE FF FF 86 00 22 FA FF FF 00 1B 55 0F 00 00 00 00 00 00 EB 35 E1 F9 FF FF 6F FA FF FF 00 00 35 34 31 00 00 35 31 00 00 00 00 19 1B 91 0F 00 00 00 00 00 00 16 09 00 40 31 00 00 00 01 40 31 00 00 16 38 3A 35 33 31 00 00 35 31 00 00 00 00 19 1B 91 0F 00 00 00 00 00 00 16 09 00 40 31 00 00 00 01 40 31 00 00 4A 16 12 20 B4 FE FF FF 0A 00 48 FA FF FF 00 1B 76 0E 00 00 00 00 00 00 16 43 E8 1F 00 00 00 00 00 00 00 00 00 00 4A 16 04 0B 53 ------------------------------------- XComHQPresentationLayer.state'GreyMarket'.Activate to invoke the Grey Market in view state 1 instead of 0 change: m_kGreyMarket.Init(XComPlayerController(Owner), GetHUD(), 0) 19 01 AC 1E 00 00 27 00 00 00 00 00 00 1B FC 12 00 00 00 00 00 00 2E 83 FE FF FF 01 44 FB FF FF 1B 56 0F 00 00 00 00 00 00 16 25 16 to: m_kGreyMarket.Init(XComPlayerController(Owner), GetHUD(), 1) 19 01 AC 1E 00 00 27 00 00 00 00 00 00 1B FC 12 00 00 00 00 00 00 2E 83 FE FF FF 01 44 FB FF FF 1B 56 0F 00 00 00 00 00 00 16 26 16 ------------------------------------- In UIGreyMarket.GetMgr to force GetMgr to always be invoked with view 0 instead of current view change: 04 2E 6B 31 00 00 19 2E 87 20 00 00 19 01 16 FB FF FF 09 00 B2 FA FF FF 00 01 B2 FA FF FF 27 00 65 20 00 00 00 1B 91 0F 00 00 00 00 00 00 20 6B 31 00 00 52 BE FE FF FF 17 01 9C 0A 00 00 4A 16 04 3A A1 0A 00 00 to: 04 2E 6B 31 00 00 19 2E 87 20 00 00 19 01 16 FB FF FF 09 00 B2 FA FF FF 00 01 B2 FA FF FF 27 00 65 20 00 00 00 1B 91 0F 00 00 00 00 00 00 20 6B 31 00 00 52 BE FE FF FF 17 25 4A 16 01 9C 0A 00 00 01 9C 0A 00 00 ------------------------------------- XGEngineeringUI.UpdateMainMenu -- add Gray Market option to Engineering Build Main Menu original hex: (virtual 0x398) 07 6C 00 84 19 1B 4C 0E 00 00 00 00 00 00 16 0A 00 15 41 00 00 00 2D 01 15 41 00 00 18 21 00 19 1B 75 0B 00 00 00 00 00 00 16 0A 00 0F 29 00 00 00 2D 01 0F 29 00 00 16 55 01 F7 26 00 00 02 00 26 16 07 C3 00 84 19 1B 4C 0E 00 00 00 00 00 00 16 0A 00 15 41 00 00 00 2D 01 15 41 00 00 18 21 00 19 1B 75 0B 00 00 00 00 00 00 16 0A 00 0E 29 00 00 00 2D 01 0E 29 00 00 16 55 01 F7 26 00 00 03 00 2C 02 16 07 F7 00 19 1B 5C 11 00 00 00 00 00 00 16 0C 00 FC 32 00 00 00 1B 0D 11 00 00 00 00 00 00 2C 0B 16 55 01 F7 26 00 00 03 00 2C 04 16 new hex: 07 6C 00 19 1B 75 0B 00 00 00 00 00 00 16 0A 00 0F 29 00 00 00 2D 01 0F 29 00 00 55 01 F7 26 00 00 02 00 26 16 55 01 F7 26 00 00 03 00 2C 05 16 0B 0B 0B 0B 0B 00 22 27 00 00 0B 0B 0B 0B 0B 0B 0B 0B 07 C3 00 84 19 1B 4C 0E 00 00 00 00 00 00 16 0A 00 15 41 00 00 00 2D 01 15 41 00 00 18 21 00 19 1B 75 0B 00 00 00 00 00 00 16 0A 00 0E 29 00 00 00 2D 01 0E 29 00 00 16 55 01 F7 26 00 00 03 00 2C 02 16 07 F7 00 19 1B 5C 11 00 00 00 00 00 00 16 0C 00 FC 32 00 00 00 1B 0D 11 00 00 00 00 00 00 2C 0B 16 55 01 F7 26 00 00 03 00 2C 04 16 ------------------------------------- XGEngineeringUI.OnMainMenuOption -- to cause Gray Market Menu item to invoke Gray Market UI original hex: header: 00 27 00 00 AB 1F 00 00 00 00 00 00 FE 26 00 00 00 00 00 00 00 00 00 00 00 27 00 00 00 00 00 00 C5 00 00 00 66 14 00 00 67 01 00 00 0F 01 00 00 body: 07 61 00 9A 35 56 FB FF FF 6A FA FF FF 00 00 10 00 00 27 00 00 35 C4 FF FF FF 6B FA FF FF 00 00 35 C7 26 00 00 C8 26 00 00 00 00 01 FC 26 00 00 26 16 1B C3 21 00 00 00 00 00 00 16 04 0B 06 64 01 1C AA FD FF FF 20 5C FA FF FF 27 4A 4A 4A 4A 16 0F 00 FF 26 00 00 10 00 00 27 00 00 01 F7 26 00 00 07 C9 00 9A 00 FF 26 00 00 2C 02 16 19 1B 12 22 00 00 00 00 00 00 16 0A 00 00 00 00 00 00 1B C3 2A 00 00 00 00 00 00 16 06 5A 01 07 47 01 9A 00 FF 26 00 00 2C 04 16 19 1B 12 22 00 00 00 00 00 00 16 0A 00 00 00 00 00 00 1B EC 2A 00 00 00 00 00 00 16 19 19 19 1B 12 22 00 00 00 00 00 00 16 0A 00 C8 1E 00 00 00 1B 61 10 00 00 00 00 00 00 16 09 00 0E 18 00 00 00 01 0E 18 00 00 0A 00 00 00 00 00 00 1B 76 22 00 00 00 00 00 00 16 06 5A 01 1B EA 10 00 00 00 00 00 00 00 FF 26 00 00 16 1B DD 21 00 00 00 00 00 00 16 04 0B 53 new hex: (virtual 0x15B) header: 00 27 00 00 AB 1F 00 00 00 00 00 00 FE 26 00 00 00 00 00 00 00 00 00 00 00 27 00 00 00 00 00 00 C5 00 00 00 66 14 00 00 5B 01 00 00 0F 01 00 00 body: 07 5F 00 9A 35 56 FB FF FF 6A FA FF FF 00 00 10 00 00 27 00 00 35 C4 FF FF FF 6B FA FF FF 00 00 35 C7 26 00 00 C8 26 00 00 00 00 01 FC 26 00 00 26 16 1B C3 21 00 00 00 00 00 00 16 06 42 01 1C AA FD FF FF 20 5C FA FF FF 27 4A 4A 4A 4A 16 0F 00 FF 26 00 00 10 00 00 27 00 00 01 F7 26 00 00 05 FF 26 00 00 00 00 FF 26 00 00 0A CF 00 2C 02 19 1B 12 22 00 00 00 00 00 00 16 0A 00 00 00 00 00 00 1B C3 2A 00 00 00 00 00 00 16 06 38 01 0A F7 00 2C 04 19 1B 12 22 00 00 00 00 00 00 16 0A 00 00 00 00 00 00 1B EC 2A 00 00 00 00 00 00 16 06 38 01 0A 1F 01 2C 05 19 1B 12 22 00 00 00 00 00 00 16 0A 00 00 00 00 00 00 1B F4 2A 00 00 00 00 00 00 16 06 38 01 0A FF FF 1B EA 10 00 00 00 00 00 00 00 FF 26 00 00 16 06 38 01 1B DD 21 00 00 00 00 00 00 16 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 04 0B 53 Link to comment Share on other sites More sharing options...
Drakous79 Posted July 28, 2013 Share Posted July 28, 2013 Great job Amineri :smile: Link to comment Share on other sites More sharing options...
Recommended Posts