Currently this is hardcoded to The Roost because I ran out of time,
but it's easy to add support for other inn rooms. I had to extend
the Lua scene API quite a bit, hence a bunch of unrelated changes
so it doesn't break every other event script.
I think I want branches to be used for new expansions - for example
once Dawntrail is superseded then it will be moved to a branch
called 7.0.
Major/minor patch versions are now treated equally, basically
every time the game version is bumped a new tag is created. I have
created tags for the previously supported patches now. I also
clarified that these are moreso for "historical" purposes and
you shouldn't have any expectations of it building or working. If
you're determined enough, I'm sure you can make it work.
Currently if you don't have it configured (or it's invalid for
wahtever other reason) you get an unhelpful "failed to read Item
EXH" error. Now there is a clearer warning message, which also
prints out the current configuration value.
This is a warning, not an error - in case someone is intentionally
trying to run Kawari without a game path specified.
This was invalid YAML and was causing confusion, apparently YAML
needs backslashes escaped but only in quotes. Since this doesn't
really need to be quoted, I just removed them.
* Fix //gm item and //gm aetheryte
-Aetheryte's command opcode changed some time in the last few weeks apparently
-Item wasn't working, now it does, and additionally supports a quantity value now
-Aetheryte's on value is properly inverted from the Lua side
* Rename GilShopTransactionAck to ShopLogMessage and outline the ItemObtainedLogMessage opcode
-IOLM is not implemented yet, we just have the struct defined for now.
* Add the forgotten size test
* Update comment for InventoryTransactionFinish
They seem to be in order (Sapphire and other sources suggest this
as well.) So they are now derived from a BASE_INVENTORY_ACTION
constant to make it easier to update in the future.
-These had to be co-developed simultaneously. You can't have one without the other, they're that intertwined.
-The Lua API was extended extensively to allow for us to pull this off.
Some changes include support omitting sending forced client updates for gil and items, and
allowing access to the buyback list and queueing updates for it.
-Added various enums to reduce the amount of magic numbers everywhere.
-The buyback list API is put into its own new file: buyback.rs.
-Refactored more portions of the buy and sell code into connection.rs to reduce ipc boilerplate everywhere.
-More will be refactored in the future.
-The generic shopkeeper has changed so much that it is now its own dedicated script, GilshopKeeper.lua.