ivan icon indicating copy to clipboard operation
ivan copied to clipboard

(See the other PRs first!) This is the merge of all my other PRs + some fixes and adjustments.

Open AquariusPower opened this issue 4 years ago • 104 comments

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 :)

AquariusPower avatar Mar 24 '20 00:03 AquariusPower

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

lgtm-com[bot] avatar Mar 27 '20 00:03 lgtm-com[bot]

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

lgtm-com[bot] avatar Mar 27 '20 17:03 lgtm-com[bot]

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

lgtm-com[bot] avatar Mar 27 '20 20:03 lgtm-com[bot]

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

lgtm-com[bot] avatar Mar 27 '20 20:03 lgtm-com[bot]

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.

AquariusPower avatar Mar 27 '20 21:03 AquariusPower

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

lgtm-com[bot] avatar Mar 27 '20 21:03 lgtm-com[bot]

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

lgtm-com[bot] avatar Mar 27 '20 22:03 lgtm-com[bot]

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

lgtm-com[bot] avatar Mar 28 '20 21:03 lgtm-com[bot]

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!

AquariusPower avatar Mar 28 '20 23:03 AquariusPower

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

lgtm-com[bot] avatar Mar 29 '20 00:03 lgtm-com[bot]

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

lgtm-com[bot] avatar Mar 29 '20 03:03 lgtm-com[bot]

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

lgtm-com[bot] avatar Mar 29 '20 04:03 lgtm-com[bot]

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.

AquariusPower avatar Mar 29 '20 04:03 AquariusPower

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

lgtm-com[bot] avatar Mar 29 '20 04:03 lgtm-com[bot]

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

lgtm-com[bot] avatar Mar 29 '20 22:03 lgtm-com[bot]

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

lgtm-com[bot] avatar Mar 29 '20 23:03 lgtm-com[bot]

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

lgtm-com[bot] avatar Mar 30 '20 00:03 lgtm-com[bot]

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

lgtm-com[bot] avatar Mar 30 '20 01:03 lgtm-com[bot]

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

lgtm-com[bot] avatar Mar 30 '20 03:03 lgtm-com[bot]

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

lgtm-com[bot] avatar Mar 31 '20 20:03 lgtm-com[bot]

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

lgtm-com[bot] avatar Mar 31 '20 22:03 lgtm-com[bot]

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

lgtm-com[bot] avatar Mar 31 '20 23:03 lgtm-com[bot]

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

lgtm-com[bot] avatar Apr 01 '20 01:04 lgtm-com[bot]

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

lgtm-com[bot] avatar Apr 01 '20 21:04 lgtm-com[bot]

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.

AquariusPower avatar Apr 01 '20 21:04 AquariusPower

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

lgtm-com[bot] avatar Apr 01 '20 21:04 lgtm-com[bot]

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

lgtm-com[bot] avatar Apr 01 '20 22:04 lgtm-com[bot]

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

lgtm-com[bot] avatar Apr 02 '20 01:04 lgtm-com[bot]

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

lgtm-com[bot] avatar Apr 02 '20 15:04 lgtm-com[bot]

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

lgtm-com[bot] avatar Apr 04 '20 19:04 lgtm-com[bot]