ivan
ivan copied to clipboard
(See the other PRs first!) This is the merge of all my other PRs + some fixes and adjustments.
This was split on several PRs, but there is still code here that are not on them, so, let this be the last PR considered.
I think this is overall ready, I made some basic tests during implementations, and let it for hours on auto-play mode (but it does not test everything/flow). What is mainly missing is more tests on normal gameplay.
Many new things:
- Lights (ready?): Weaker lights from small rocks feels ok now, but it would be better more extensive testing (ex.: crafting daggers from crystal rocks) before changing/removing the related default (disabled) option.
- new sfx (ready): New sfx for cutting webs, is it ok? (also cutting will provide a bit of spider silk lump)
- crafting skill progress (ready),
- CustomMoveKeys(ready?): not only move keys, all keys now can be customized but not in-game, the cfg file must be edited (after it is generated in game, somewhat complex for now...)
- ItemInfo(ready?): https://github.com/Attnam/ivan/issues/588 (is it working well?)
- GodFavours(ready?): https://github.com/Attnam/ivan/issues/586 (should I move some other pray effect to favour?)
- Crafting(ready): basic/simple tailoring added (TODO one day with graphics: (Done)~~tailoring bench 3x requirements of building a workbench;~~ sewing thread should drop from webs instead of spider silk lump; as tools should have scissors and needles and pins crafted from meltables, all with graphics). Will work with any CAN_BE_TAILORED material.
- Independent SFX volume control (ready)
- Auto drop item after Offering it at an altar (in case it is rejected) optional (ready)
Bugfixes (some may only happen when using Wizard Auto Play mode):
- Fixed: last know god's relation also works now for Pray() and Favour() (ready)
- Fixed: MIDI transition leaving wrong instrument note state (ready?)
- Fixed: rare SIGFPE at character::TakeHit(), and crash of scrollofearquake at SpiderNest dungeon level (from AutoPlayMode).
- Fixed: Also, fixed it when crafting a key that breaks (or anything else that has no BROKEN configuration on .dat files) see https://github.com/Attnam/ivan/issues/582
- Workaround: bitmap::DrawLine() crash see https://github.com/Attnam/ivan/issues/590
- fixed some random crashes in some places (see commit log)
And command line --help with some info and functionalities: --defgen Generate defines validator source file. (NEW) --defval Validate defines. (NEW) --version Show current game version.
Who have access to edit this PR, feel free to make any adjustments, even if minor.
~~Obs.: developer console is still broken tho but wont cause trouble if you dont use it.~~ developer console is working again! I think cuz of this: https://github.com/Attnam/ivan/pull/589 :)
This pull request introduces 1 alert and fixes 1 when merging 717771953d240bd317021b22643aab777342c617 into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function
This pull request introduces 1 alert and fixes 1 when merging 84ad14513a4154b30eca38636735c31dd4ec044f into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function
This pull request introduces 1 alert and fixes 1 when merging 6b0439e1699b44718cfc4a9ae4440c04ba67a344 into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function
This pull request introduces 1 alert and fixes 1 when merging 5b4dd80b0bf1c752919b9d2fad356971f28bb7c1 into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function
The movement keys are used to navigate lists right? and so will also the custom movement keys. To enable it, start/continue a game, toggle the custom move keys option on, and set each of the 8 directions. It is as failsafe as I managed to test/implement for now :>
EDIT: now, uparrow and downarrow will also always work on navigating lists.
This pull request introduces 1 alert and fixes 1 when merging 1701525956dd002e44b03a8ef43f98847795e19e into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function
This pull request introduces 1 alert and fixes 1 when merging 45569bd81f350947ce5b3fdcf060cac874d1c4b7 into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function
This pull request introduces 1 alert and fixes 1 when merging 5db90e12014dc156137cc3e8d50304b6b279780b into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function
Every command key can now be customized thru CustomCommandKeys.cfg. First generate it in a running gameplay, suggested direction keys vs Normal keybinding scheme: 789 ; ' vb/ Close the game. Edit that file ex.: change 'z' to 'Z' Start the game, load a savegame and test it!
This pull request introduces 1 alert and fixes 1 when merging 545cdfc8e80554a1a21868e306e040068b683038 into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function
This pull request introduces 15 alerts and fixes 1 when merging 382e5ffa87c66265857a0efc24b09dc216873b48 into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 14 for Missing return statement
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function
This pull request introduces 14 alerts and fixes 1 when merging 97bb1373ebfb724b92d417d9f80d0ff224f6cdbc into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 13 for Missing return statement
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function
adding favours seems a simple task, if I take too long, feel free to add new ones and change how much each costs :) the code is simply moved from pray commands into favor commands, it has basically a prefix code (to calc cost), a suffix code (to let player learn about the spell) and a define text that ends up being like an ID.
This pull request introduces 14 alerts and fixes 1 when merging d1e4ebacdc89dfeb2e74cd0b00d2dae5faa2bcb1 into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 13 for Missing return statement
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function
This pull request introduces 1 alert and fixes 1 when merging 4be0bfc07b1795be6fa18edc53a9e884ff13fe5e into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function
This pull request introduces 1 alert and fixes 1 when merging cf65b4a0c53e51a36e7450ed886ecf450e301045 into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function
This pull request introduces 1 alert and fixes 1 when merging 2f405041b7741e64c22c1cf2c6cbeffa0500272e into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function
This pull request introduces 1 alert and fixes 1 when merging db206374fcd61ff534f0596f12f69ae50d17834b into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function
This pull request introduces 1 alert and fixes 1 when merging d659b985e9b2485bc0f0ad9b49a75ca8c7ed2c90 into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function
This pull request introduces 1 alert and fixes 1 when merging a86fee8455372c8512134a81a299c31340a19f10 into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function
This pull request introduces 2 alerts and fixes 1 when merging 80242ee5913a63686897bb6d48ca92f11a2ea047 into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 1 for Wrong type of arguments to formatting function
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function
This pull request introduces 2 alerts and fixes 1 when merging 7cfb2b7e2ba5c8ce60fea2d43c918389f43542c4 into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 1 for Wrong type of arguments to formatting function
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function
This pull request introduces 2 alerts and fixes 1 when merging 889a4bfce34b65e81807f427e27a3faf6815d47d into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 1 for Wrong type of arguments to formatting function
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function
This pull request introduces 2 alerts and fixes 1 when merging 0baef44777d36838709bb9201171c6c92416b57d into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 1 for Wrong type of arguments to formatting function
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function
To add tailoring I changed some stuff on crafting code, better test it more to be sure all is ok, I just crated a normal dagger and all looked fine.
This pull request introduces 2 alerts and fixes 1 when merging bebc41159e134c902f94829907af4f214f48335a into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 1 for Wrong type of arguments to formatting function
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function
This pull request introduces 2 alerts and fixes 1 when merging ff0a7473d6a779e3f34e69df9fc38adb3409f09d into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 1 for Wrong type of arguments to formatting function
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function
This pull request introduces 2 alerts and fixes 1 when merging 37199792b328df5a9e99df23d2d3ccc13313a400 into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 1 for Wrong type of arguments to formatting function
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function
This pull request introduces 3 alerts and fixes 1 when merging fdb24d6b4e8047ec478174cd69a05086af365d11 into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 1 for Wrong type of arguments to formatting function
- 1 for Local variable hides global variable
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function
This pull request introduces 1 alert and fixes 1 when merging 3d9c00d3f90857689f5450cc3bc12303ef7cfd40 into 87f4a33fc84e8b3b432c9db4211c3d213433cc98 - view on LGTM.com
new alerts:
- 1 for Too few arguments to formatting function
fixed alerts:
- 1 for Too few arguments to formatting function