Compare commits

...
607 Commits
Author SHA1 Message Date
NovaRain 99de222605 Release 4.3.8 2023-03-31 22:10:41 +08:00
NovaRain 29ad2bf3b8 Recompressed sfall resource files 2023-03-31 21:54:55 +08:00
NovaRain 4fc282fa61 Minor edit to the changelog 2023-03-29 14:31:50 +08:00
NovaRain 5b4e165368 Fixed assorted typos in documents
Added an example ini to Ammo INI Loader mod.
Updated the changelog.
2023-03-27 20:30:36 +08:00
NovaRainandGitHub 43a261bd27 Bump activesupport to 6.1.7.3 in /docs 2023-03-20 10:04:46 +08:00
NovaRain b69e4e0eeb Fixed being able to call multiple exit msg boxes with Alt+F4 2023-03-16 10:44:58 +08:00
NovaRain 254473cf1c Added support for closing the game by Alt+F4 (#457) 2023-03-15 12:09:52 +08:00
NovaRain c4efe78661 Updated readme and added changelog (#451) 2023-03-13 14:22:35 +08:00
NovaRain 656b122f3e Removed deprecated "register" keyword
Minor edits to documents.
2023-03-10 21:01:21 +08:00
NovaRain 30802e8e21 Changed the copyright text format in the credits 2023-03-06 22:41:37 +08:00
NovaRain 56150d572a Renamed some object flags 2023-03-05 10:18:59 +08:00
NovaRain a75886a020 Added a tweak to the ammo info for Glovz's/YAAM
* to display correct ammo stats based on the formulas w/o editing
proto.msg manually.

Updated translation ini files.

Set the maximum number of screenshots to 10k (was 100k)

* 100k is impractical because the max files per directory on FAT32 is
65535 (only if all files are in 8.3 format) when the game came out.
2023-03-01 09:13:48 +08:00
NovaRain 64dc30d922 Removed CreditsAtBottom from ddraw.ini
* sfall built-in credits will be shown at the beginning when from the
main menu and at the end during the ending.
2023-02-26 23:29:17 +08:00
NovaRain a6a2285ffe Fixed incorrect death endings being shown
* can happen in vanilla FO2 when the player is lv10 or higher,
with a low chance.
2023-02-15 21:05:25 +08:00
NovaRain 381032a246 Removed redundant "Done" strings from sfall log
* only when there are alternative states or for graphics/sound/scripting
2023-02-10 08:42:02 +08:00
NovaRain b6ee7bebf2 Tweaked how disabled unsafe opcodes work
* now disabled opcodes will just do nothing instead of causing the
script terminated.
2023-02-09 15:04:41 +08:00
NovaRain dd73cbea9c Removed StackEmptyWeapons from ddraw.ini (always enabled) 2023-02-02 12:38:33 +08:00
NovaRain d3960cbebb Bump activesupport to 6.1.7.1 in /docs (again) 2023-01-25 18:25:55 +08:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
a93eee9849 Bump commonmarker from 0.23.6 to 0.23.7 in /docs (#454)
Bumps [commonmarker](https://github.com/gjtorikian/commonmarker) from 0.23.6 to 0.23.7.
- [Release notes](https://github.com/gjtorikian/commonmarker/releases)
- [Changelog](https://github.com/gjtorikian/commonmarker/blob/main/CHANGELOG.md)
- [Commits](https://github.com/gjtorikian/commonmarker/compare/v0.23.6...v0.23.7)

---
updated-dependencies:
- dependency-name: commonmarker
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-25 18:23:49 +08:00
NovaRain e954b34676 Try to bump activesupport to 6.1.7.1 in /docs 2023-01-22 09:13:55 +08:00
NovaRain 5c5df4ef64 Added a tweak to allow premade characters to have less than two traits
Fixed the player's traits not being displayed in certain unusual cases.
(with save editing or hex-edited GCD file)
2023-01-10 10:31:35 +08:00
NovaRain ad137896c9 Increased the upper limit of ProcessorIdle 2023-01-07 23:06:07 +08:00
NovaRain 9bdd633fcd Cosmetic edits: updated/unified the copyright header years 2022-12-31 10:13:41 +08:00
NovaRain 48e2a63cdf Edits to sfall_ver_* script functions
* they take no arguments and only return constants, simpler structure
in ASM is enough.
2022-12-26 08:43:40 +08:00
NovaRain 33e6cb0cb8 Fixed broken read_string script function
* actually it has never worked.
2022-12-22 09:34:52 +08:00
NovaRain 52e796815a Fixed a crash bug in FullItemDescInBarter
* when weapon/ammo has no description, it'd trigger UB from strncpy_s.
2022-12-17 10:35:39 +08:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
6c7bbb5a58 Bump nokogiri from 1.13.9 to 1.13.10 in /docs (#449)
Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.13.9 to 1.13.10.
- [Release notes](https://github.com/sparklemotion/nokogiri/releases)
- [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.13.9...v1.13.10)

---
updated-dependencies:
- dependency-name: nokogiri
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-08 12:17:40 +08:00
NovaRain 05f2fb4001 Minor edits to Functions_def.h 2022-12-03 13:18:06 +08:00
NovaRain 024a13c6a8 Minor edits to code and documents 2022-12-01 08:40:39 +08:00
NovaRain 9ecd598544 Fixed args for HOOK_RESTTIMER 2022-11-26 09:58:13 +08:00
NovaRain 8521c1772b Minor edits to a few ASM hacks
(Changed 2-bytes null jcc to just 2 nop)
2022-11-16 12:19:04 +08:00
NovaRain f7d94e16c9 Tweaked HOOK_INVENTORYMOVE for dropping caps
* before the amount was set in the dropped object only after the hook.

Edits to hook script documents.
2022-10-29 11:32:25 +08:00
NovaRain 3b8d2a4527 Edited the format for window title
Reorganized RMOBJ_* defines in define_extra.h.
2022-10-27 17:20:41 +08:00
NovaRain db7419a2f7 Some format edits to documents
Updated version number.
2022-10-25 21:23:21 +08:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
e93ca6fcab Bump nokogiri from 1.13.6 to 1.13.9 in /docs (#447)
Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.13.6 to 1.13.9.
- [Release notes](https://github.com/sparklemotion/nokogiri/releases)
- [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.13.6...v1.13.9)

---
updated-dependencies:
- dependency-name: nokogiri
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-21 11:12:22 +08:00
NovaRain 6181140954 Minor edit to hook script document 2022-10-18 09:07:31 +08:00
NovaRain 007fa7314b Minor edit to hookscripts.md 2022-10-18 08:58:51 +08:00
NovaRain 87f5a5f081 Fixed incorrect critter names for corpses
* happens when multiple critters based on the same proto with
different scripts attached are killed.

Tweaked the fix for create_object_sid function.
2022-10-09 23:25:15 +08:00
NovaRain 5d5da0a471 Code correction to LoadOrder.cpp
Updated version number.
2022-09-28 10:17:11 +08:00
NovaRain bd15cf2b9e Fixed the order of autoloaded dat files on FAT file system 2022-09-27 16:14:38 +08:00
NovaRain ea2a4bfdfa Edited [ExtraPatches] description in ddraw.ini 2022-09-22 10:49:16 +08:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
8ad4f86e1d Bump commonmarker from 0.23.4 to 0.23.6 in /docs (#444)
Bumps [commonmarker](https://github.com/gjtorikian/commonmarker) from 0.23.4 to 0.23.6.
- [Release notes](https://github.com/gjtorikian/commonmarker/releases)
- [Changelog](https://github.com/gjtorikian/commonmarker/blob/main/CHANGELOG.md)
- [Commits](https://github.com/gjtorikian/commonmarker/compare/v0.23.4...v0.23.6)

---
updated-dependencies:
- dependency-name: commonmarker
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-22 10:46:18 +08:00
NovaRain c4b55734d1 Release 4.3.7 2022-08-27 21:15:14 +08:00
NovaRain ec5874a3c4 Fixed HOOK_REMOVEINVENOBJ to match RMOBJ_* defines
Edits to define_extra.h for RMOBJ_* defines
2022-08-14 11:04:17 +08:00
NovaRain 8b3a2bcead Expanded set_pipboy_available function for mode 2 2022-08-11 21:24:47 +08:00
NovaRain 13cf81e151 Code edits to SpeedInventoryPCRotation
Updated version number.
2022-08-09 21:32:59 +08:00
NovaRain efdd6afa34 Fixed the lighting of critters in gl_partycontrol 2022-08-09 08:43:39 +08:00
NovaRain c878d17a2b Added support for editor.msg to message_str_game
Edits to header files.
2022-08-09 08:12:54 +08:00
NovaRain 050af07b3b Corrected the language path for loading art files 2022-08-08 22:08:24 +08:00
NovaRain 1e5fd7fd13 Combined AllowDShowSound=2 with mode 1
Removed MoreTiles from ddraw.ini (always enabled)
Minor edits to documents.
2022-08-08 09:08:05 +08:00
NovaRain c1475ba453 Dropped support for old pre-SSE processors
Changed buf_to_buf function to SSE implementation.

* affected old processors:
Intel - Pentium II, older Celeron (Covington/Mendocino)
AMD - older K7 (Athlon Classic/Thunderbird)
2022-07-30 00:41:07 +08:00
NovaRain 85862d1599 Corrected comments in Functions.cpp 2022-07-27 22:11:42 +08:00
NovaRain be2af4a3a2 Changed the default number of sound buffers
Updated version number.
2022-07-26 08:23:47 +08:00
NovaRain d0fa304035 Minor edits to sslc document 2022-07-22 22:22:48 +08:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
e49922d438 Bump tzinfo from 1.2.9 to 1.2.10 in /docs (#442)
Bumps [tzinfo](https://github.com/tzinfo/tzinfo) from 1.2.9 to 1.2.10.
- [Release notes](https://github.com/tzinfo/tzinfo/releases)
- [Changelog](https://github.com/tzinfo/tzinfo/blob/master/CHANGES.md)
- [Commits](https://github.com/tzinfo/tzinfo/compare/v1.2.9...v1.2.10)

---
updated-dependencies:
- dependency-name: tzinfo
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-22 19:50:32 +08:00
burner1024andGitHub f29720effa Switch default Cat Jules appearance to leather jacket
* The original default/naked appearance (`nmprmb`) in RP only has very limited weapon anims.
2022-07-18 16:17:58 +08:00
NovaRain 543198cc89 Release 4.3.6 2022-07-08 21:00:59 +08:00
NovaRain c869080d91 Correction to previous commit 2022-07-07 08:28:03 +08:00
NovaRain f5f1f5ec70 Fixed NPC stuck in a loop of reloading the solar scorcher
(happens when out of ammo and it's dark.)
2022-07-06 20:05:17 +08:00
NovaRain 0b3be17839 Edits to document about set_self function
Updated version number.
2022-07-02 20:03:21 +08:00
NovaRainandGitHub 08f19e63e1 Merge pull request #439 from sfall-team/dependabot/github_actions/develop/actions/setup-python-4
Bump actions/setup-python from 3 to 4
2022-07-01 09:21:23 +08:00
dependabot[bot]andGitHub abbdc36eb8 Bump actions/setup-python from 3 to 4
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 3 to 4.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-01 01:09:07 +00:00
NovaRain 8c71953eed Fixed float_msg script function
* didn't set purple/black text color correctly (was always grey)
2022-06-30 21:51:34 +08:00
NovaRain dee28843ae Changed the mode 1 of NPC combat control mod
* now requires sfall debugging mode to control all critters.
2022-06-24 09:36:45 +08:00
NovaRain cd91355896 Added a warning pop-up for the open file limit 2022-06-17 22:47:27 +08:00
NovaRain 85e5da660b Added "get_terrain_name" script function
Updated documents for the function.
Minor edits to other code.
2022-06-14 21:04:51 +08:00
NovaRain 7015db2414 Changed HiResMode to not always be read from ddraw.ini
Minor edits to Perks.ini (120 CPL)
2022-06-10 09:04:17 +08:00
NovaRain a415fc2e7f Added ladder climbing action to UseWalkDistance
Added notes to MainMenuFontColour description in ddraw.ini.
Updated version number.
2022-06-07 10:24:52 +08:00
NovaRain 0516aabcc1 Added GainReputation to NPC combat control mod 2022-06-06 12:54:02 +08:00
NovaRain 1d8004623a Minor code edits
* read FastShotFix setting only once.
2022-06-02 14:22:05 +08:00
NovaRain 5d1c63ab08 Replaced item_w_curr_ammo_ engine function
* a simplified one, without calling proto_ptr_ unnecessarily.

Related code edits to Combat.cpp & Inventory.cpp.
2022-06-01 12:51:42 +08:00
NovaRainandGitHub 8527e17fa1 Merge pull request #438 from sfall-team/dependabot/github_actions/develop/actions/setup-python-3
Bump actions/setup-python from 2 to 3
2022-05-30 21:04:42 +08:00
NovaRainandGitHub 3782d548d8 Merge pull request #437 from sfall-team/dependabot/github_actions/develop/actions/upload-artifact-3
Bump actions/upload-artifact from 2 to 3
2022-05-30 21:04:06 +08:00
dependabot[bot]andGitHub f3e6c244be Bump actions/setup-python from 2 to 3
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 2 to 3.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-30 12:59:24 +00:00
dependabot[bot]andGitHub c449c72556 Bump actions/upload-artifact from 2 to 3
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 2 to 3.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-30 12:59:21 +00:00
NovaRain 6b97ad4bcf Release 4.3.5 2022-05-30 20:56:17 +08:00
NovaRain a4230c3bad Added a function to EngineUtils.cpp
Minor edits to ddraw.ini.
2022-05-28 21:40:34 +08:00
NovaRain 9667b522a8 Tweaked how the graphics mode setting is read
Added a couple of notes to ddraw.ini.
Minor code edits.
2022-05-27 13:18:09 +08:00
NovaRain 73ec85b01d Code edits to gl_npcarmor script 2022-05-26 22:55:08 +08:00
NovaRain e8652ca17b Some edits to documents 2022-05-25 21:52:24 +08:00
NovaRain 8bad934279 Removed ComputeSprayMod from ddraw.ini
Updated version number.
2022-05-25 21:17:06 +08:00
NovaRain fddb71e88a Added support for SPLASH_SCRN_TIME option to sfall HRP 2022-05-24 22:49:40 +08:00
NovaRain a51bd676e0 Fixed being able to push knocked down team members in combat 2022-05-23 12:00:20 +08:00
NovaRain 02b25c325f Simplified the fix in commit 4e3d8a6 2022-05-22 14:45:21 +08:00
NovaRain 05cd041e79 Code edits to Stats::UpdateHPStat() 2022-05-20 15:36:15 +08:00
NovaRainandGitHub c8cd9ef4db Merge pull request #436 from phobos2077/dependabot/bundler/docs/nokogiri-1.13.6
Bump nokogiri from 1.13.4 to 1.13.6 in /docs
2022-05-19 11:41:26 +08:00
dependabot[bot]andGitHub f40e9be2a1 Bump nokogiri from 1.13.4 to 1.13.6 in /docs
Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.13.4 to 1.13.6.
- [Release notes](https://github.com/sparklemotion/nokogiri/releases)
- [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.13.4...v1.13.6)

---
updated-dependencies:
- dependency-name: nokogiri
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-19 03:39:32 +00:00
NovaRain 7ab89200d7 Tweaked interface bar redraw in gl_partycontrol 2022-05-12 21:58:03 +08:00
NovaRain 7057e044d0 Changed Stats::UpdateHPStat() to update the current HP as well
Updated German translation file.
2022-05-11 21:55:50 +08:00
NovaRainandGitHub 51035958a3 Merge pull request #435 from wipe2238/dependabot
Add dependabot configuration for GitHub Actions
2022-05-10 21:40:23 +08:00
Wipe 2cbc026b72 Dependabot will make PRs against develop branch 2022-05-10 12:01:54 +02:00
Wipe 4ad77cebc1 Added dependabot configuration for GitHub Actions 2022-05-10 11:29:25 +02:00
NovaRain 64f6647fb0 Fixed crash when the player equips an "overloaded" weapon
Fixed a bug in ReloadWeaponKey that could cause a hang.
(only triggerable due to the crash fix for overloaded weapons)
2022-05-05 10:40:47 +08:00
NovaRain b24df4caad Removed DivisionOperatorFix from ddraw.ini (always enabled) 2022-04-29 08:09:24 +08:00
NovaRain 9a6022d923 Moved FO1 worldmap sfx code to Interface.cpp
Removed extra button release sfx for markers on the world map.
(to match the exact FO1 behavior)
2022-04-21 19:53:15 +08:00
MarkusandGitHub f985af96db Fallout 1 worldmap sfx implementation (#434)
Implemented FO1 worldmap sfx (#373)
Added obj_drop call definition.
2022-04-21 19:49:48 +08:00
NovaRain e9581cd92b Corrected placeholders for obsolete opcodes
Minor edit to documents.
2022-04-20 09:51:40 +08:00
NovaRain 144d57243c [HRP] Disabled scaling of main menu buttons/text for Chinese version
* to prevent garbled text from Image::ScaleText()
2022-04-18 14:22:08 +08:00
NovaRainandGitHub 3a9121fb8e Merge pull request #432 from phobos2077/dependabot/bundler/docs/nokogiri-1.13.4
Bump nokogiri from 1.13.3 to 1.13.4 in /docs
2022-04-12 19:51:28 +08:00
dependabot[bot]andGitHub 758162b3e0 Bump nokogiri from 1.13.3 to 1.13.4 in /docs
Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.13.3 to 1.13.4.
- [Release notes](https://github.com/sparklemotion/nokogiri/releases)
- [Changelog](https://github.com/sparklemotion/nokogiri/blob/v1.13.4/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.13.3...v1.13.4)

---
updated-dependencies:
- dependency-name: nokogiri
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-12 10:02:30 +00:00
NovaRain e5f7d29a03 [HRP] Fixed movie subtitles not showing up when setting MOVIE_SIZE=1
* happens with certain combinations of screen and movie aspect ratios.

Minor edit to Credits.cpp.
Updated version number.
2022-04-11 09:56:35 +08:00
NovaRain d3255277d7 Copy GitHub pages fixes 2022-04-07 21:24:49 +08:00
NovaRain 824780db88 Fix to GitHub pages 2022-04-07 21:16:16 +08:00
NovaRain 0a5a4e569e Release 4.3.4 2022-04-07 20:46:58 +08:00
NovaRain 69461516fe Edited code comment in the previous commit
Code format edits to BugFixes.cpp.
2022-04-07 20:42:33 +08:00
NovaRain 4e3d8a62ca Fixed item planting for non-biped critters with the "barter" flag set
(BGforgeNet/Fallout2_Unofficial_Patch#95)

Updated version number.
2022-04-04 21:31:51 +08:00
NovaRain c3f6b0ebb6 Removed FadeBackgroundMusic option
Removed unused "type" parameter from Tilemap::make_path_func.
Edits to documents and README.md.
2022-03-28 14:35:15 +08:00
NovaRain 93b53081a7 Edits to hookscripts.md and hooks.yml
Corrected a typo in arrays.md.
Removed redundant compiler txt files.
2022-03-21 22:49:42 +08:00
NovaRain 4af68b612b Code edits to the fix for FadeBackgroundMusic 2022-03-21 08:42:45 +08:00
NovaRain 1f44428fd6 Updated Ammo INI Loader example script mod
Updated version number.
2022-03-15 12:59:19 +08:00
NovaRain b486b58dd1 Added .gitattributes with ssl syntax highlighting
Added game debug project info to ddraw.sln.
2022-03-11 20:23:57 +08:00
NovaRain 1b579ad1d4 Bumped checkout to v3 for GitHub Action
Bumped nokogiri from 1.12.5 to 1.13.3 in /docs
2022-03-03 16:51:24 +08:00
NovaRainandGitHub 454c8d2a6d Merge pull request #430 from phobos2077/dependabot/bundler/docs/nokogiri-1.13.3
Bump nokogiri from 1.12.5 to 1.13.3 in /docs
2022-02-26 19:44:38 +08:00
dependabot[bot]andGitHub c609d79841 Bump nokogiri from 1.12.5 to 1.13.3 in /docs
Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.12.5 to 1.13.3.
- [Release notes](https://github.com/sparklemotion/nokogiri/releases)
- [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.12.5...v1.13.3)

---
updated-dependencies:
- dependency-name: nokogiri
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-26 11:33:23 +00:00
NovaRain a392e5620a Added support for LocalMapXLimit/LocalMapYLimit options to sfall HRP 2022-02-20 08:39:02 +08:00
NovaRain 15c512ff7b Fixed some problems with the main menu in sfall HRP
Minor edits to other code.
2022-02-20 08:05:27 +08:00
NovaRain 4b6bc75814 Changed the build OS to Windows Server 2019
* for keeping Visual Studio 2017.
2022-02-17 11:34:14 +08:00
NovaRain 3f2f3560ad Release 4.3.3.1 2022-02-17 10:38:06 +08:00
NovaRain 29cd430b17 Moved 24-bit BMP code refs to HRP\Image.cpp
Minor edits to code/documents.
Updated version number.
2022-02-17 10:20:56 +08:00
NovaRain e84376351b Reverted the palette update method for DX9 mode to pre-4.3.1
* moving the processing to GPU (commit edbfc05)

Improved the functionality of AllowDShowMovies:
now can take screenshots and press any key to skip AVI movies.

Code edits to Logging.cpp.
2022-02-14 12:03:21 +08:00
NovaRain 2d97d24a39 Reverted the limit on hit chance (commit 71bc271)
* reason: the text length is depend on the frm.
2022-02-13 07:37:11 +08:00
NovaRain 4f89788dbd Fixed the game printing an incorrect item name in some cases
Minor fixes in Graphics.cpp and InputFuncs.cpp.
2022-02-13 02:06:56 +08:00
NovaRain 6df9dacc5f Code correction on DX9 initialization for built-in HRP
Some minor code edits.
2022-02-12 10:48:07 +08:00
NovaRain 71bc2719c4 Added minimum and maximum limits to the hit chance
* to prevent display glitches (BGforgeNet/Fallout2_Unofficial_Patch#85)

Lowered the max number of PNG screenshots to 10K.
2022-02-11 15:06:07 +08:00
NovaRain 1c9866a693 [HRP] Fixed the screenshot for sfall DX9 mode
* Now the screenshots are saved in PNG format.

[HRP] Adjusted the position of movie subtitles.

[TEST] Changed the DirectX 9 device creation mode.
2022-02-10 12:13:26 +08:00
NovaRain a7e6365d84 [HRP] Fixed possible crash in combat for EXTRA_WIN_MSG_CHECKS (#425) 2022-02-05 09:08:24 +08:00
NovaRain 0622a89978 [HRP] Fixed the main menu still being stretched when MAIN_MENU_SIZE=0
[HRP] Fixed broken console messages when using ConsoleOutputPath (#424)
[HRP] Disabled IFACE_BAR_WIDTH for Chinese version.
Fixed the copyright line in the credits.
2022-02-01 09:37:27 +08:00
NovaRain 41b4b773a3 Release 4.3.3 2022-01-20 13:41:56 +08:00
NovaRain 0807a4ea02 Updated Translations.ini and Russian/Chinese files 2022-01-20 12:53:01 +08:00
NovaRain a9f03544d5 Fixed movie scale pitch size for CPU palette conversion 2022-01-20 10:29:00 +08:00
NovaRain 03676d09ee Fixed the music not playing after loading a saved game (#422)
* if the save is on the same map, and while in the game.
2022-01-20 07:11:51 +08:00
NovaRain e17ad5d11b Minor code edits 2022-01-19 09:41:37 +08:00
NovaRain b66cc42fbc [HRP] Added missing movie scaling implementation for GPUBlt=2
Reverted the previous commit.
2022-01-18 08:52:00 +08:00
NovaRain 6cf41401aa Disabled compiling HLSL shader files at build-time
* use existed files in the HLSL folder instead.
2022-01-17 21:25:25 +08:00
NovaRain 45e2037082 Added HLSL source files and compiled shader files
* this should remove the hidden dependency on d3dcompiler_xx.dll.
2022-01-17 21:14:01 +08:00
NovaRain fc5863ac46 Added a new warning message on shader effects to Graphics.cpp 2022-01-17 12:12:08 +08:00
NovaRain 0a5ec8c70f Added a redraw timer to the debug editor
* redraws the background game screen when moving the editor window.
* works for sfall DX9 mode.
2022-01-17 09:51:24 +08:00
NovaRain 937cff235e Updated the year for version info 2022-01-17 08:53:48 +08:00
NovaRain 6bf967e877 Code correction to DebugEditor.cpp 2022-01-15 11:59:13 +08:00
NovaRain f839c8374a Increased the width of the mouse drop area for inv on the barter screen
Removed HRP's BARTER_PC_INV_DROP_FIX.
2022-01-15 09:56:55 +08:00
NovaRain 3301ace580 [HRP] Fixed interface position for smaller resolution (640x480)
[HRP] Fixed main menu position when MAIN_MENU_SIZE=0
2022-01-15 08:57:51 +08:00
NovaRain 247d4fae6c Edits to the arrays document 2022-01-13 21:29:24 +08:00
NovaRain f30558b091 Fixed a bug in 4.3.1 that caused AI to be unable to use some weapons
Code edits regarding AIpref in Enums.h.

Added GamePids.h (derived from ItemPid.h in mapper scripts)
2022-01-13 10:14:25 +08:00
NovaRain 7c0adc558a Updated documents for the removal of ArraysBehavior option
Some other minor edits to documents.
2022-01-12 09:40:18 +08:00
NovaRain 5493ed38d3 Redid the idle implementation for ProcessorIdle
[HRP] Added support for CPU_USAGE_FIX option.
[HRP] Code changes to DirectDraw.cpp for DD7 performance.
2022-01-11 10:03:11 +08:00
NovaRain 16ad57806f Removed ArraysBehavior and RemoveWindowRounding from ddraw.ini
* both are now always enabled
2022-01-07 06:46:28 +08:00
NovaRain adadf608e7 Changed the "Radiated" on the char screen to be highlighted in gray
* when the player still has an impending radiation effect

[HRP] Fixed the clickability issue for SCALE_BUTTONS_AND_TEXT_MENU.

Moved some code related to HRP.
Unified the naming style for color variables.
2022-01-06 14:19:05 +08:00
NovaRain 6faf71da66 Code edits to Graphics.cpp for device lost state 2022-01-04 07:03:50 +08:00
NovaRain 40fa4a1336 Fixed black screen after restoring DX9 device 2022-01-03 23:58:17 +08:00
NovaRain 8427ad657a Fixed Tilemap::make_path_func and DrawAlternateAmmoMetre functions 2022-01-03 07:07:08 +08:00
NovaRain 5fbbeeb328 [HRP] Code correction 2021-12-29 07:06:56 +08:00
NovaRain a30f640eb9 [HRP] Added support for reading .rix images larger than 640x480 2021-12-29 06:20:20 +08:00
NovaRain 921db36478 Improved the message box for CRC mismatch
Changed SkipCompatModeCheck to not require sfall debugging mode.
Minor code edits.
2021-12-28 12:44:20 +08:00
NovaRain 74455db5a9 Removed SkipSizeCheck from ddraw.ini
* the executable file size check is also removed (mostly).
2021-12-27 10:15:41 +08:00
NovaRain 437e6bfaea Code correction/edits to the previous commit
Added a debug message for the open file limit being exceeded.
2021-12-26 11:33:15 +08:00
NovaRain eb0bd4dfd0 Fixed the broken fix for addicted party members
(BGforgeNet/Fallout2_Restoration_Project#131, #420)

Improved the duplicate path removal in LoadOrder.cpp.
Code edits to the fix in previous commit for system compatibility.
2021-12-25 20:40:09 +08:00
NovaRain b0cc4352f7 Added additional fixes to FadeBackgroundMusic
* fixes not closing sound files after fading, which led to unable to
load the game anymore due to the the open files limit.

Code edits to CRC.cpp for displayed messages.
2021-12-24 13:47:22 +08:00
NovaRain df15a147d9 Renamed ShowMapGridKey to MapGridToggleKey 2021-12-21 09:47:59 +08:00
NovaRain 680284d785 Fixed crashes in HRP code
Reverted the version string on the main menu.
2021-12-20 12:16:18 +08:00
NovaRain 3cc98fc15d Added a debug option to toggle the hex grid
Added HiResMode option to ddraw.ini, along with some edits.
Fixed db_init function wrapper.
Some edits to HRP code.
2021-12-20 12:00:45 +08:00
NovaRain 317c462918 Edited action.yml for additional library 2021-12-19 09:06:20 +08:00
NovaRain c7e46a6b84 Merge branch 'HRP-integration' into develop
# Conflicts:
#	sfall/Game/GUI/Text.cpp
#	sfall/Modules/Interface.cpp
2021-12-19 09:01:48 +08:00
NovaRain 92a24a6112 Code cleanup and edits before merging 2021-12-19 08:42:36 +08:00
NovaRain da5286eaa9 Code cleanup and correction 2021-12-19 08:40:12 +08:00
NovaRain 3022e96809 Merge branch 'develop' into HRP-integration 2021-12-18 12:58:03 +08:00
NovaRain 6ff73a513e Fixed the load order of f2_res.dat & sfall.dat
Changed the default graphics mode back to 0 (now DD7).
2021-12-18 11:39:05 +08:00
NovaRain 53be017f0b Added fixed call point for sfall initialization 2021-12-17 09:56:52 +08:00
NovaRain 095dfae544 Fixed broken object descriptions for Chinese version
Minor code edits.
2021-12-16 12:38:14 +08:00
NovaRain 3145d4e5dc Added missing functions (was causing errors)
Added an improvement to prevent the player from running outside the
cropped part of the map.

Added an improvement for the list of action icons when enabling
IFACE_BAR_MODE (the list is no longer created under the interface).
2021-12-16 12:28:26 +08:00
NovaRain 5a18570bd9 Code changes to Graphics.cpp & main.cpp
* from HRP test branch
2021-12-12 10:28:35 +08:00
NovaRain fb8ca5317f Added SCALE_2X option, and minor fixes 2021-12-12 09:26:23 +08:00
NovaRain bc8665b131 Added a limit on path nodes for NPCs to NumPathNodes option 2021-12-11 10:36:26 +08:00
NovaRain fee4720ef5 Added ALTERNATE_AMMO_METRE and NumPathNodes options 2021-12-11 09:19:00 +08:00
NovaRain 7553b7bfc0 Fixed a crash bug in FadeBackgroundMusic
(when trying to mute the master audio volume in the preferences screen)

Minor code edits.
2021-12-10 09:58:22 +08:00
NovaRain 26b3fac1e0 Code fixes/edits to the previous commit 2021-12-10 09:12:44 +08:00
NovaRain 0ba69166b9 Added FADE_TIME_RECALCULATE_ON_FADE and EXTRA_WIN_MSG_CHECKS options 2021-12-09 09:47:59 +08:00
NovaRain d94e68ba73 Finished the code for DirectDraw graphics mode 2021-12-08 12:59:02 +08:00
NovaRain 69cd1461f1 Updated the code for DirectDraw graphics mode 2021-12-07 08:43:02 +08:00
NovaRain 6ca5644e99 (WIP) Added DirectDraw graphics mode for built-in HRP
Moved some code from Graphics.cpp to WinProc.cpp
2021-12-05 09:29:48 +08:00
NovaRain 70da19e49b Added code for game movies and edited other code 2021-12-02 12:26:23 +08:00
NovaRain aa6f1cabec Edit to the previous commit 2021-11-28 19:02:24 +08:00
NovaRain 0a42db619d Added a tweak to allow printing new floating messages when their limit is exceeded (#388)
Fixed incorrect value of the limit number of floating messages.
2021-11-28 12:35:14 +08:00
NovaRain ccaacd72e4 Updated code for deactivating the external HRP 2021-11-28 09:31:13 +08:00
NovaRain 6f08a50f9a Removed UseCommandLine from ddraw.ini (always enabled)
Updated version number.
2021-11-27 06:42:19 +08:00
NovaRain 98cc168288 Added CreditsScreen.cpp/h 2021-11-26 09:32:55 +08:00
NovaRain 81912b47ed Added optimization for the save/load game screens
Edited the description of args for HOOK_TOHIT.
2021-11-23 20:43:19 +08:00
NovaRain 5acdf37c80 Added DeathScreen.cpp/h and SlidesScreen.cpp/h
Added optimization for the save/load game screens.
2021-11-23 10:04:05 +08:00
NovaRain f76c0dfe91 Added HelpScreen.cpp/h and Worldmap.cpp/h 2021-11-20 08:45:09 +08:00
NovaRain ba7773223a Added Character, LoadSave, and MiscInterface files 2021-11-19 08:54:42 +08:00
NovaRain 809cba44e8 Minor code edits to Graphics.cpp from HRP branch 2021-11-17 10:05:33 +08:00
NovaRain 1c3f3dbbd5 Changed the namespace for HRP modules
Moved some functions to the HRP namespace.
2021-11-17 10:03:45 +08:00
NovaRain 5265dd8ded Updated code 2021-11-17 06:42:12 +08:00
NovaRain 7e65aa2c64 Fixed the redrawing of windows with "DontMoveTop" flag
* if one is not topmost, it's not redrawn after calling show function.
2021-11-16 15:03:41 +08:00
NovaRain be4978324c Fixed minor bugs in HeroAppearance & CritterStats
Fixed incorrect display of name and damage values for unarmed attacks
in some cases.

Minor code edits.
2021-11-15 10:55:52 +08:00
NovaRain 1834fa3d18 Updated code for the interface bar 2021-11-15 09:02:23 +08:00
NovaRain ae05feee8c Updated code for the interface bar (WIP) 2021-11-14 09:36:29 +08:00
NovaRain e7add0d1b4 Added inventory code 2021-11-12 00:48:06 +08:00
NovaRain 5a61bb8fc3 Added code for Dialog/Barter interface
Added support for Continuum's dialog graphic.
2021-11-10 10:43:15 +08:00
NovaRain 281823e97d Release 4.3.2 2021-11-10 08:45:54 +08:00
NovaRain 32924db37c Reverted Worldmap.cpp changes in commit c19137b 2021-11-10 08:45:12 +08:00
NovaRain cd3c220ef8 Changed the option name of grave containers fix
Edited the code of tile_num function wrapper.
Reorganized the options in ddraw.ini.
Updated web document.
2021-11-09 10:01:17 +08:00
NovaRain 09813aeb86 Code edits to ScriptExtender.cpp/SpeedPatch.cpp
Minor edits to some files.
2021-11-08 13:45:35 +08:00
NovaRain f75214056e Updated map view code 2021-11-08 10:24:59 +08:00
NovaRain d4f011913c Changed the fix in commit 583105a to an option (#412) 2021-11-06 22:44:14 +08:00
NovaRain a543cd934c Updated the code for map edge clipping 2021-11-06 01:16:04 +08:00
NovaRain eb7aca6595 Added map edge clipping (partial) 2021-11-04 06:57:46 +08:00
NovaRain 49cfe39038 Updated code in EdgeBorder/ViewMap. 2021-11-03 09:02:37 +08:00
NovaRain 163b9ed5d3 Simplified the calculation loop in Glovz's formula
Changed the title bar text for DX9 windowed mode.
2021-11-02 09:39:47 +08:00
NovaRain 3846ec9b9d Updated/Corrected code
Added InterfaceBar.cpp/h.
2021-11-02 09:15:11 +08:00
NovaRain e35745353c Improvements for the windowed game mode
Some changes in the implementation of HRP code.
2021-10-31 09:57:18 +08:00
NovaRain d7647bca18 Optimized the calculation loop in YAAM code 2021-10-30 09:16:39 +08:00
NovaRain 53278a090b Some edits to YAAM code
Changed OverrideArtCacheSize to set the art cache size to 261.
Fixed typo in ddraw.ini.
2021-10-27 22:02:09 +08:00
NovaRain a533943200 Cosmetic edit: alignment of GPL text in some files 2021-10-27 22:01:15 +08:00
NovaRain 4385807cd3 Added code for the previous commit 2021-10-27 10:03:42 +08:00
NovaRain 17c73a81da Added ViewMap.cpp/h and EdgeBorder.cpp/h 2021-10-26 09:02:32 +08:00
NovaRain f2bc04001e Changed the description of CheckWeaponAmmoCost in ddraw.ini
Replaced <br> html tag with backslash in markdown documents.
(CommonMark spec)
2021-10-25 10:18:16 +08:00
NovaRain f1c087b3a3 Improved the division function in previous commit
Rewrote the text hook for main_menu_create_ in C++ (from HRP branch)
Updated version number.
2021-10-25 09:52:18 +08:00
NovaRain 3dea47c467 Rewrote Glovz's damage formula code in C++ (#355) 2021-10-24 11:12:56 +08:00
NovaRain c5075aa478 Finished the implementation of the main menu
* requires testing and correction of minor inaccuracies.
2021-10-23 07:34:39 +08:00
NovaRain 8d58e6e3bb Misc code edits 2021-10-22 00:23:58 +08:00
NovaRain be4c73fd50 Continue implementing the main menu section
Misc code edits.
2021-10-22 00:19:36 +08:00
NovaRain a19baedb96 [HRP] Implementation: MAINMENU, STATIC_SCREENS 2021-10-18 21:24:41 +08:00
NovaRain 43a8e84dee Updated define_extra.h 2021-10-16 07:24:58 +08:00
NovaRain c9ce0aa0ce Release 4.3.1 (with updated doc) 2021-10-15 10:52:35 +08:00
NovaRain 6c6f0be11b Updated web document 2021-10-15 10:51:44 +08:00
NovaRain 2d54e376c6 Release 4.3.1 2021-10-15 10:39:27 +08:00
NovaRain f48fce3274 Fixed a rounding error in Glovz's damage formula
Minor edit to gl_partycontrol script.
Updated Russian and Germen translations.
2021-10-15 10:06:02 +08:00
NovaRain b475bf91fb Updated Polish translation
Added char* variant functions to Logging.cpp.
2021-10-14 09:25:15 +08:00
NovaRain ecd574063a Minor code edits, now sfall will always create sfall-log.txt
* still won't write any unless debug options are enabled in ddraw.ini.
2021-10-13 13:47:22 +08:00
NovaRain 101238e125 Improved the party control and fixed mod related bugs
Updated gl_partycontrol script.
2021-10-13 13:01:24 +08:00
NovaRain 2e97fe38ff Fixed JetWithdrawal in Drugs.ini conflict with fix in commit dfd810c
Simplified the code in the previous commit.
2021-10-10 07:19:46 +08:00
NovaRain 583105a76a Fixed the execution of use_p_proc handler for grave type containers
* "grave type" is a container with only two frames (open/closed)
* in vanilla code, using a grave type container in the open state does
not execute use_p_proc in its script like other containers do.
2021-10-08 10:46:57 +08:00
NovaRain ac1bc19faa Reverted the previous commit and added "obj_is_openable" function
* the previous commit conflicts with BIS document.
2021-10-08 09:16:05 +08:00
NovaRain 692e28262d Fixed the return value of obj_is_open function
* for containers with only one frame (e.g. shelves)
2021-10-07 13:43:33 +08:00
NovaRain e62803837b Minor edit to sfall function notes 2021-10-06 21:15:45 +08:00
NovaRain c19137bd1a Fixed crash at the end of DS sound playback
* revert to the previous implementation.

Made sure sfall only loads a localized resource file with valid name.
Some code edits.
2021-10-05 13:36:58 +08:00
NovaRain 5df3d7230f Improved set_scr_name function
Some code correction.
2021-10-04 12:04:46 +08:00
NovaRain 113324097c Updated the site doc as well 2021-10-03 09:56:44 +08:00
NovaRain e725445ce9 Added the description of set_scr_name function 2021-10-03 09:43:54 +08:00
NovaRain 9a5b38dfc3 Added "set_scr_name" script function
* not documented yet.
2021-10-02 22:44:15 +08:00
NovaRain edbfc055d0 Improved the rendering performance of DX9 modes
Excluded the animated colors from TravelMarkerColor (same as in 3.8.x)
Code edits and preparation.
2021-10-01 12:25:18 +08:00
NovaRain dbe24d3ebd Updated translation ini files 2021-09-30 21:46:11 +08:00
NovaRainandGitHub 10a6176da2 Merge pull request #410 from phobos2077/dependabot/bundler/docs/nokogiri-1.12.5
Bump nokogiri from 1.11.6 to 1.12.5 in /docs
2021-09-28 17:23:24 +08:00
dependabot[bot]andGitHub 7524aeba9b Bump nokogiri from 1.11.6 to 1.12.5 in /docs
Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.11.6 to 1.12.5.
- [Release notes](https://github.com/sparklemotion/nokogiri/releases)
- [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.11.6...v1.12.5)

---
updated-dependencies:
- dependency-name: nokogiri
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-28 05:56:39 +00:00
NovaRain debbda0b3b Added the ability to set custom names for unarmed attacks
Updated Translations.ini template.
Commented out empty exit() in some modules.
2021-09-27 10:37:28 +08:00
NovaRain 2fe3ccd01d Minor code edits to the previous commit 2021-09-26 07:28:19 +08:00
NovaRain 770fd7e63c Correction to the previous commit 2021-09-25 20:13:54 +08:00
NovaRain 827b96a7e0 [WIP] Added the display of actual damage for unarmed attacks in inven 2021-09-25 08:46:15 +08:00
NovaRain d661067f2c Corrected stat requirements of Jab in Unarmed.cpp
Code edits to EngineUtils.
2021-09-23 10:36:17 +08:00
NovaRain e5687247f8 Fixed setting basic punch and kick in Unarmed.ini
Minor edits to code and misc files.
2021-09-22 11:18:13 +08:00
NovaRain 249815efd9 Added Unarmed.ini example file 2021-09-21 22:59:31 +08:00
NovaRain b46d1ab47b Added a tweak to update unarmed attacks after leveling up
Changed the artifact package name.
2021-09-21 09:19:37 +08:00
NovaRain 4a32aaf80e Added a tweak to keep the selected attack mode for unarmed attacks
* was reset when the inventory is closed or the combat ends.
2021-09-20 11:16:43 +08:00
NovaRain 858a6c5343 Added new Unarmed module and UnarmedFile option
* example INI file not yet.

Replaced item_w_mp_cost_ function with the sfall implementation.

Disabled some code in various modules due to new implementations.
2021-09-19 23:14:08 +08:00
NovaRain c219ce183f Changed the encoding of polish.ini 2021-09-17 21:56:12 +08:00
burner1024andGitHub 1f6dbccb3d Added Polish translation (#409)
* added partial Polish translation from https://trzynasty-schron.net/forum/index.php?topic=8221.0

* complete Polish translation (from JaidenIsPink)
2021-09-17 21:34:18 +08:00
NovaRain deae07ffec Some code edits and preparation 2021-09-17 10:48:42 +08:00
NovaRain bb88830a5b Added a fix to display the color index 255 of the palette correctly
* in DX9 mode when using the hi-res patch

Some minor code corrections.
2021-09-12 13:59:58 +08:00
NovaRain f6c1e0f908 Code corrections 2021-09-07 06:37:57 +08:00
NovaRain 6c3dd72ea7 Added missing sounds for the buttons on the world map interface (#373)
Changed the game speed tweak to be active only during the game.
2021-09-06 10:54:47 +08:00
NovaRain c5e226a279 Fixed key repeat delay/rate for game speed tweak (#406)
Removed AffectPlayback option.
2021-09-06 07:52:41 +08:00
NovaRain 0a8a28b80c Moved some functions from AI.cpp to AIHelpers.cpp 2021-09-06 07:44:38 +08:00
NovaRain c047402dc9 Code edits to gl_npcarmor script
Added some line breaks in hookscripts.md.
2021-09-03 10:36:33 +08:00
NovaRain 569bde5fab Code changes to the previous commit
Changed HOOK_CANUSEWEAPON to run for both the player and NPCs.
Updated gl_npcarmor script.
2021-09-02 11:23:24 +08:00
NovaRain 428cf42c7d Added an additional '"Can't Use" flag to misc flags in item objects
* it makes the weapon object unusable in combat.

Edits to header files.
2021-08-31 12:35:47 +08:00
NovaRain dfd810c9e4 Fixed the Jet addiction was not removed when using the antidote (#405)
(BGforgeNet/Fallout2_Restoration_Project#118)
2021-08-29 10:20:01 +08:00
NovaRain d9b7a714ec Moved some patches/functions between Interface.cpp and MiscPatches.cpp
* And Graphics.cpp and InputFuncs/Input.cpp

Tweaked the buffer flush (actually print to file) rate in Console.cpp.
2021-08-27 21:00:15 +08:00
NovaRain 888269af92 Renamed the var inline functions 2021-08-27 20:45:53 +08:00
NovaRain a275fff434 Replaced *(TYPE*)FO_VAR with new inline functions 2021-08-26 10:03:47 +08:00
NovaRain 3f0216d49b Fixed broken ConsoleOutputPath due to the line break support 2021-08-25 11:33:58 +08:00
NovaRain ce64f5d352 Moved render.cpp/h files to GUI folder/namespace 2021-08-25 10:14:53 +08:00
NovaRain 110facfada Added support for the newline character '\n' in pro_*.msg files (#401) 2021-08-25 09:52:05 +08:00
NovaRain bb55b97d12 Some code edits and preparation 2021-08-24 14:12:32 +08:00
NovaRain 40538e26d3 Changed SingleCore to set CPU affinity to the second core if available 2021-08-23 16:07:29 +08:00
NovaRain 3bc49e05d5 Replaced HRP addresses with the define values 2021-08-23 10:24:27 +08:00
NovaRain a6417069ad Internal fix for HOOK_REMOVEINVENOBJ 2021-08-21 11:35:41 +08:00
NovaRain c6f17c5b7d Fixed ai_check_drugs for AIDrugUsePerfFix=1 2021-08-21 07:50:04 +08:00
NovaRain cf028bcdfe Added "util" namespace to EngineUtils.cpp 2021-08-20 21:34:14 +08:00
NovaRain 478a522463 Code fixes to ai_check_drugs_hack in combatAI.cpp 2021-08-20 07:15:11 +08:00
NovaRain a186014895 Added new EngineTweaks module and TweaksFile option 2021-08-19 23:09:03 +08:00
NovaRain 3129e27737 Fixed a crash when opening a file whose name contains the '%' char
Corrected the code in the previous commit.
2021-08-19 13:33:52 +08:00
NovaRain 94dd41f7ac Relocated some functions in the previous commit
Added an additional 'Healing Item' flag to ext flags for item protos.

* indicates the item is a healing drug when AI needs to heal itself.
2021-08-18 12:03:58 +08:00
NovaRain e55db2b4da Added a fixed implementation of ai_check_drugs_ function
* which has all fixes/hook built-in.

Disabled old fixes for vanilla ai_check_drugs_ in AI.cpp/BugFixes.cpp.
2021-08-17 12:22:57 +08:00
NovaRain 3a0e64e3ce Added FadeBackgroundMusic option 2021-08-13 20:10:08 +08:00
NovaRain 638499b106 Code edits to ExtraSaveSlots.cpp
* the page numbering is now 0-indexed, to better align with the macros.

Re-numbered save slot control metarules.
2021-08-13 10:54:57 +08:00
NovaRain 5ef12b60c5 Changed the implementation of AutoQuickSave
* now it sets the number of pages used for quick saving.

Added related macros for controlling the save slot with scripts.
2021-08-12 15:07:24 +08:00
NovaRain 34ae106fa5 Improved the page control for ExtraSaveSlots
Minor edits to ddraw.ini.
2021-08-11 14:09:39 +08:00
NovaRain a34aa64ced Added AutoSearchSFX option for automatic search of SFX files
Excluded ANIM_walk from the debug log about missing critter art files.
2021-08-08 22:40:49 +08:00
NovaRain a26b7931a6 Minor edits to the previous commit 2021-08-06 00:54:20 +08:00
NovaRain 865adb7ee8 Fixed the main menu music stopped when entering load game screen
Added the ability to continuously play the music when moving to another
map that uses the same music.

Updated version number.
2021-08-05 14:18:02 +08:00
NovaRain d9bcad0a11 Removed the extra AP check when AI reloads a weapon
(reloading is possible if there are not enough action points.)
2021-08-01 07:12:47 +08:00
NovaRainandGitHub b744dfeb1b Merge pull request #399 from phobos2077/dependabot/bundler/docs/addressable-2.8.0
Bump addressable from 2.6.0 to 2.8.0 in /docs
2021-08-01 06:45:14 +08:00
dependabot[bot]andGitHub 42f909fcb4 Bump addressable from 2.6.0 to 2.8.0 in /docs
Bumps [addressable](https://github.com/sporkmonger/addressable) from 2.6.0 to 2.8.0.
- [Release notes](https://github.com/sporkmonger/addressable/releases)
- [Changelog](https://github.com/sporkmonger/addressable/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sporkmonger/addressable/compare/addressable-2.6.0...addressable-2.8.0)

---
updated-dependencies:
- dependency-name: addressable
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-13 18:08:13 +00:00
NovaRain 6a95cdf3ca Updated the documents in the previous commit 2021-07-07 09:26:41 +08:00
NovaRain da3cdd4698 Added markdown version of compiler documents 2021-07-05 10:01:48 +08:00
NovaRain 6402d616fa Merge branch 'master' into develop 2021-07-05 09:58:27 +08:00
NovaRain bd121c1dcd Attempted to fix the document website 2021-07-03 09:30:53 +08:00
NovaRain f9fa332b23 Added Brazilian Portuguese translation
(from Felipefpl)
2021-06-28 12:16:07 +08:00
NovaRain ec6d25da3d Release 4.3.0.2 2021-06-26 23:09:39 +08:00
NovaRain fc15a17d99 Updated french.ini (from HawK-EyE) 2021-06-26 23:08:32 +08:00
NovaRain 0a89ab4ceb Fixed the algorithm for sorting the quest list (#397) 2021-06-21 06:08:37 +08:00
NovaRain ecb113fd54 Fixed black screen after starting a new game w/o HRP (#395) 2021-06-20 08:37:42 +08:00
NovaRain e03d3f5963 Fixed item duplication bug in HOOK_INVENTORYMOVE (#396)
Code edits to Animations.cpp regarding locking anim slots.
Updated version number.
2021-06-20 02:05:29 +08:00
NovaRain dec97f22c7 Re-release 4.3.0.1 2021-06-10 08:44:55 +08:00
NovaRain 5682d9b12a Fixed code in Animations.cpp for commit 7c55d37 (#393, #394) 2021-06-10 08:40:05 +08:00
NovaRain 3177977927 Release 4.3.0.1 2021-06-10 00:39:24 +08:00
NovaRain 44c988f306 Minor code edits to BugFixes.cpp 2021-06-09 21:07:27 +08:00
NovaRain f8dee32c16 Code edits to tilemap.cpp and engine defines 2021-06-09 11:14:10 +08:00
NovaRain f96b1776b5 Fixed chem_primary_desire values not being saved correctly for PMs 2021-06-08 12:16:05 +08:00
NovaRain 38abea7fc1 Fixed infinite loop in combat with AIDrugUsePerfFix 2021-06-08 07:05:07 +08:00
NovaRain ff324c304f Fixed friendly fire check not running for unset area_attack_mode 2021-06-07 06:57:24 +08:00
NovaRain 7c55d37e57 Disabled the improved implementation of animation registration
(for release build)

Updated version number and Russian translation file.
2021-06-06 09:04:59 +08:00
NovaRainandGitHub 069020da85 Merge pull request #387 from wipe2238/github-action
Enabled autobuilds with GitHub Actions
2021-06-06 08:09:40 +08:00
Wipe cf67e182b3 Excluded DevXP build from artifact 2021-06-06 02:01:59 +02:00
NovaRainandGitHub fb74f37372 Merge pull request #384 from phobos2077/dependabot/bundler/docs/rubyzip-2.3.0
Bump rubyzip from 1.2.3 to 2.3.0 in /docs
2021-06-01 12:20:15 +08:00
NovaRainandGitHub 96de6c0bfd Merge pull request #383 from phobos2077/dependabot/bundler/docs/nokogiri-1.11.6
Bump nokogiri from 1.10.3 to 1.11.6 in /docs
2021-06-01 12:20:05 +08:00
dependabot[bot]andGitHub 415b3a8b17 Bump rubyzip from 1.2.3 to 2.3.0 in /docs
Bumps [rubyzip](https://github.com/rubyzip/rubyzip) from 1.2.3 to 2.3.0.
- [Release notes](https://github.com/rubyzip/rubyzip/releases)
- [Changelog](https://github.com/rubyzip/rubyzip/blob/master/Changelog.md)
- [Commits](https://github.com/rubyzip/rubyzip/compare/v1.2.3...v2.3.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-01 04:15:27 +00:00
dependabot[bot]andGitHub 7b02efad58 Bump nokogiri from 1.10.3 to 1.11.6 in /docs
Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.10.3 to 1.11.6.
- [Release notes](https://github.com/sparklemotion/nokogiri/releases)
- [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.10.3...v1.11.6)

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-01 04:14:13 +00:00
NovaRain a19a9eae10 Release 4.3 2021-06-01 12:00:50 +08:00
NovaRain 443a423081 Some edits to documents
Removed txt version of arrays, hookscripts, and function notes.
2021-06-01 11:05:38 +08:00
NovaRain b665c904f1 Minor code edits 2021-06-01 09:51:59 +08:00
NovaRain a9a8088775 Added a debug message about missing combat object 2021-05-30 11:49:13 +08:00
NovaRain dbe2de310c Fixed incorrect object type search when loading a game saved in combat 2021-05-29 10:36:00 +08:00
NovaRain 1a40aceea3 Added markdown version of function notes and opcode list 2021-05-28 21:38:10 +08:00
NovaRain 09ab715687 Code edits to various modules 2021-05-28 11:35:26 +08:00
NovaRain 5e3f1eeaad Removed "proto_exists" function in previous commit
Added macro for checking pid.
2021-05-26 06:58:18 +08:00
NovaRain 1b37ed5d7c Added "proto_exists" script function
Updated gl_auto_closebox example script.
2021-05-25 12:55:11 +08:00
NovaRain 0b242a770d Changed the placement algorithm for multihex critters
(Rewrote the fix in the previous commit.)
2021-05-23 09:10:37 +08:00
NovaRain 4d1371b540 Fixed the placement of multihex critters in the player's party 2021-05-23 08:07:22 +08:00
NovaRain cb70bc78a3 Fixed infinite loop in ObjCanSeeObj_ShootThru_Fix (#365) 2021-05-22 08:04:11 +08:00
NovaRain e8abb99d0e Corrected code for initializing attached script (create_object_sid, #378) 2021-05-19 10:19:00 +08:00
NovaRain aee6ed1195 Rewrote the fix for clearing floating text messages (#377) 2021-05-19 06:22:37 +08:00
NovaRain 6b368e6a69 Updated files for online documents
Fixed typos in hookscripts.md & sslc_readme.txt.
2021-05-18 11:31:20 +08:00
NovaRain 9ce3a42102 Corrected code in Animations.cpp 2021-05-17 10:43:43 +08:00
NovaRain 73a9128369 Implemented an improved animation registration process 2021-05-16 13:05:38 +08:00
NovaRain dd4ad75e4e Fixed value bounds for the redefined key code value in HOOK_KEYPRESS
Minor code & document edits.
2021-05-15 21:54:59 +08:00
NovaRain 9497fae442 Code edits to Animations.cpp to prepare new implementation
Added fill area truncation to win_fill_color.
2021-05-13 12:03:23 +08:00
NovaRain 16f8f1b92b Fixed setting the last script window when the mouse leaves (#376) 2021-05-12 10:30:38 +08:00
NovaRain 6b7e83ab15 Rewrote the code in Animations.cpp
Fixed gl_auto_closebox not closing containers in some cases.
2021-05-11 10:43:06 +08:00
NovaRain fc53df5a16 Added a new hook: HOOK_CANUSEWEAPON
Updated NPC armor appearance mod script.
2021-05-09 20:17:40 +08:00
Wipe 35649839cf Added composite GitHub action and simple workflow using it 2021-05-09 06:48:20 +02:00
NovaRain 4f22b5a9fa Code correction to two previous commits 2021-05-09 08:42:28 +08:00
NovaRain f3f8321415 Enabled AI to use unarmed attack when switching weapons
Added build folders to gitignore.
2021-05-08 23:11:37 +08:00
NovaRain 183b74a8fa Moved item_count function fix to Game\items.cpp
Finished the code of item_weapon_mp_cost replacement.
2021-05-08 12:42:53 +08:00
NovaRain 6d88f21028 Added a tweak to play "magic hands" anim when using items on objs
* for issues with scripted animations not playing (#356)
2021-05-07 15:48:40 +08:00
NovaRain db0b8eddba Set idle(Sleep) function for losing window focus
Some code correction.
2021-05-06 10:36:06 +08:00
NovaRain 2985c2866b Added additional code to "duplicate obj_dude script data" fix 2021-05-04 12:39:07 +08:00
NovaRain eeab5065da Reverted the change of obj_under_cursor in 4.2.9 (commit 1684395)
The game window position is now also saved when dragging the window by
the title bar.
2021-05-02 12:06:53 +08:00
NovaRain 2e337d246b Adjusted how the fix for create_object_sid works
Added CreateObjectSidFix option.
2021-05-02 10:34:16 +08:00
NovaRain 7df0407798 Rewrote the score calculation in AIBestWeaponFix (#370)
Changed FastShotFix to be disabled by default.
2021-04-29 11:54:20 +08:00
NovaRain 52af67ad3d Added DisableSpecialAreas option
Added a new "fonts" folder for language specific fonts.
2021-04-25 11:49:02 +08:00
NovaRain b72b26d292 Added language path for loading fonts (#368)
Some code fixes to support the language path.
2021-04-24 10:25:51 +08:00
NovaRain 99c95b2154 Code correction regarding string length 2021-04-23 10:50:34 +08:00
NovaRain 0cd2aa4f83 Added language path for sfall translations.ini 2021-04-22 11:45:21 +08:00
NovaRain 460bc045b9 Added language path for premade files (#368)
Added AppIface.msg file support to Hero Appearance mod.
2021-04-21 11:28:48 +08:00
NovaRain 83eee2ba1e Code correction to the previous commit 2021-04-19 11:19:07 +08:00
NovaRain c855c6db19 Fixed and improved AllowLargeTiles option (#367)
Removed the unspent skill points limit.
2021-04-18 13:09:06 +08:00
NovaRain edd60379c5 Added a new value to AIDrugUsePerfFix 2021-04-14 16:18:33 +08:00
NovaRain 45faa184d8 Reorganized/renamed the functions in IniReader 2021-04-13 13:37:23 +08:00
NovaRain fbd997e8bc Fixed cur_town function on new game start (#366) 2021-04-13 12:08:45 +08:00
NovaRain df45450394 Fixed AI behavior to prevent the unnecessary use of healing drugs 2021-04-13 12:02:39 +08:00
NovaRain ea9037e38a Moved all ini functions inside "IniReader" class 2021-04-11 21:24:33 +08:00
NovaRain 2eefeb4f23 Improved the "order to attack" function for party members 2021-04-11 19:33:38 +08:00
NovaRain 278bfdc841 Added markdown version of hookscripts.txt
Some edits to documents.
2021-04-07 21:09:55 +08:00
NovaRain acf859bebf Cosmetic edits: alignment of multi-line ternary 2021-04-07 21:05:55 +08:00
NovaRain 0fbc29e8fd Added a new hook: HOOK_BESTWEAPON 2021-04-05 12:43:11 +08:00
NovaRain 990587b145 Code changes to the previous commit 2021-04-04 09:56:31 +08:00
NovaRain 4dc5012ea5 Added a few fixes for knockout/down issues 2021-04-03 12:35:42 +08:00
NovaRain 16faac8cad Cosmetic edits to the code:
* tabs for indentation, spaces for alignment.
* reduced the length of some separation comment lines.
* changed some variable names ('exist' is a verb).
2021-04-03 11:01:37 +08:00
NovaRain 69633e96d5 Added DL_FIX for logging
Edits to ddraw.ini and arrays.md.
2021-04-02 01:19:29 +08:00
NovaRain f90c613107 Improved some combat-related fixes
Changed the search of localized res file to two letter-code.
2021-04-01 13:40:00 +08:00
NovaRain 4244ebd8c5 Improved the implementation of tile_num_beyond function 2021-03-29 11:54:56 +08:00
NovaRain b37b5a2e76 Corrected the code in the previous commit 2021-03-28 08:43:26 +08:00
NovaRain 454e9bde73 Added a fixed implementation of the tile_num_beyond_ function
Removed the code of multihex critter self-hit fix from BugFixes.cpp.
(now fixed properly with the aforementioned implementation)
2021-03-28 00:54:04 +08:00
NovaRain 59a1332af5 Removed DataLoadOrderPatch from ddraw.ini (always enabled) 2021-03-26 12:16:20 +08:00
NovaRain a7b95e0948 Added a fix for multihex critter self-hit issue 2021-03-25 21:28:56 +08:00
NovaRain 78d8f46af6 Added "set_quest_failure_value" script function 2021-03-24 12:52:00 +08:00
NovaRain d56de64913 Added a search for localized sfall resource files 2021-03-23 11:03:20 +08:00
NovaRain 561632fdca Code correction to the previous commit 2021-03-23 09:44:17 +08:00
NovaRain 1cc978c0b1 Added a fix to the sorting of the quest list (#361)
Added a cosmetic to the dialog review interface.

Fixed a crash introduced in commit d95e439.
2021-03-22 14:24:45 +08:00
NovaRain 438bc6f78f Code edits to the weapon switching fix in AI.cpp
Added more struct defines and corrected related code.
2021-03-19 11:24:15 +08:00
NovaRain 9657731441 Fixed the error handling in create_object_sid
* also added a debug message about the missing pid.
2021-03-17 09:44:42 +08:00
NovaRain a343e5d6e1 Fixed a possible crash in commit d76f513
* when the proto does not exist, leading to null object pointer.
2021-03-16 09:20:53 +08:00
NovaRain bdebed85b7 Added a tweak to prevent NPC aggression (#357)
* when non-hostile NPCs accidentally hit the player or members of the
player's team.
2021-03-15 10:56:44 +08:00
NovaRain d76f513873 Fixed the script attached to an object not running upon object creation (#359)
Minor code style edits.
2021-03-14 11:01:03 +08:00
NovaRain e99fe09137 Moved INI reading functions from main.cpp to IniReader.cpp 2021-03-13 13:47:27 +08:00
NovaRain 21ff9238a0 Edited description of CheckWeaponAmmoCost and HOOK_AMMOCOST 2021-03-12 09:34:57 +08:00
NovaRain 4d04cae5a6 Fixed the check of the ammo cost for a shot in CheckWeaponAmmoCost (#360) 2021-03-11 14:39:21 +08:00
NovaRain d95e43956d Fixed set_critter_burst_disable script function
* now applies only to weapons with burst attack as the secondary mode.

Minor edits to code comments.
2021-03-10 11:52:09 +08:00
NovaRain 6b49c0dbaf Added markdown version of arrays.txt (test) 2021-03-05 23:44:38 +08:00
NovaRain f8447ba3b1 Added fixes for the AP cost for AI
* before the reload AP cost for AI was always 2, even if it's changed
by CALCAPCOST hook.
2021-03-05 15:07:34 +08:00
NovaRain af90444f9b Some code edits regarding BodyPart enums 2021-03-03 10:38:32 +08:00
NovaRain db94b8e6a7 Added a fix for AI weapon validation before attack
* the check was always based on the primary weapon hit mode instead of
the selected attack mode.
2021-03-02 12:10:14 +08:00
NovaRain 1f5871fdb7 Removed the fix added in commit 2efa4a9
reason: supposedly a minor issue affecting the initial movement of an
NPC, requires further verification before implementation due to
potential harm to the AI behavior.
2021-02-26 10:30:56 +08:00
burner1024andGitHub 5f0c5ae1fa Better docs (#241)
* website skeleton

* updated bunder to 2.0, added caching

* fix missing plugins?

* enable deploy for the branch, try to save cache

* need to use relative path?

* fix missing css

* use doc theme

* really enable doc theme?

* mayeb this time

* come on baby

* how about now

* please ?

* pretty please

* ehhh

* working theme

* added hooks

* formatting

* formatting 2

* added doc yaml from bgforge mls 1.0.7

* no need for nav order

* link reference

* hooks on top

* added global scripts

* pages are generated, exclude them

* generate site

* pip3 ?

* maybe now

* hooks page is generated automatically

* added table of contents to pages

* don't waste so much space

* switch highlight classes

* mark functions as code in description

* more formatting

* reformat doc with python

* loaded offsets

* opcode is loaded into yaml, txt no longer necessary

* mark unsafe functions

* restore hooks page

* clarification

* deduplicated hooks doc

* saner TOC

* typo

* move more docs

* hook scripts doc is now in md

* arrays doc is now in md

* added data types page

* added more info about old behaviour

* minor formatting issues

* moved more function docs to yaml

* all sfall functions docs are transpiled to yaml format

* formatting

* fix format

* add subcategory support

* simplified yaml format, added structure doc

* simplified structure and added clarification

* generated a separate page for hook types

* formatting

* disambiguation

* format clarification

* move get_map* to subcategory: doc is not relevant for other functions

* simple permalink

* fix links

* included more info on the main page

* more clarification

* rename offset > opcode

* try to get more sensible baseurl

* added best practices page

* what's up with the slashes

* allow parent pages with no content

* separate docs for direct memory access functions

* added latest functions

* fixed hook types link

* move get_explosion_damage to macros

* removed duplicated comment

* removed old comments

* added hook ids

* lowercase sfall

* more sfall lowercasing

* added proper permalinks

* changes from mr.stalin

* fix typos

* clarification

* fix direct memory access page

* fixed top navlink

* fixed urls

* checked sfallgv.sav, it's really not bloating much

* format clarification

* shorter name

* add mixed data type, sort

* add proc type, link hooks functions

* use same terminology

* added bool

* rearranged index

* added unsafe label

* move to root

* add stats

* more upper/lowercase

* should work now

* added build status

* added combat category, added description for modified_ini, moved global script functions into a subcat

* special note for set_self

* typo

* enable children

* cleanup

* move lists to arrays

* show header filename for macro instead

* rearrange more items to be more intuitive

* build on bionic

* separate object manipulation

* added object manipulation link to home

* typo

* formatting

* Added a note about charges

* punctuation

* formatting

* moved floor2 to math

* changed label color

* moved art and appearance to animations

* name too long

* search note

* moved exex_map_update to maps category

* moved more functions from other to skills

* too much blue

* formatting

* moved art_cache_clear to art section

* empathize that var name must be exactly 8 characters long

* update usages for inc_npc_level

* separate objects, scripts and variables

* updated url

* moved get_string_pointer to strings

* updated add_extra_msg_file doc

* typo

* latest doc updates from develop

* updated default layout from upstream

* applied local changes: subcategory list

* remove unnecessary backticks

* added new functions

* fix STD_PROCEDURE_END display

* formatting

* don't fail on missing hook id

* formatting

* updated doc from upstream

* added optimization and sslc pages

* order ssl and optimization pages below home

* really order optimization on top

* merge objects_in_radius variants

* updated from upstream

* tone down link color

* fixed formatting for updated theme

* updated travis for ruamel

* added favicon

* restored separator between functions

* updated functions.yml

* updated sfall functions

* rearranged some window and object function

* hook updates, pre-arg renaming

* hook args renumbering

* merged upstream

* added new hooks and functions from upstream

* remove the long-winded note about macro

* switch to gha for jekyll deployment

* sudo for deps

* try to fix ruamel missing

* switch build to master only, ref https://github.com/phobos2077/sfall/pull/241#discussion_r580365212

* update status badge for https://github.com/phobos2077/sfall/pull/241
2021-02-24 11:40:24 +03:00
NovaRain 5b3a83df91 Edits to hookscripts.txt
Added weapon argument to HOOK_CALCAPCOST.
2021-02-24 11:59:04 +08:00
NovaRain 797de4bc0e Fixed gl_auto_closebox for gravesites 2021-02-24 10:41:27 +08:00
NovaRain cf8981b267 Added more checks to weapon ammo script functions 2021-02-24 10:40:01 +08:00
NovaRain 146cf4e08b Moved some script function handlers to new files
Reorganized some script functions.
2021-02-24 10:37:54 +08:00
NovaRain 9d640de1ca Code correction related to GetProto usage 2021-02-20 10:16:23 +08:00
NovaRain 80a0c410e1 Removed "using namespace fo" from the global definition in .cpp files 2021-02-20 09:46:04 +08:00
NovaRain da9432a33a Added a tweak to restore combat flags for NPC after fleeing
Added item_weapon_range game function.
Improved the range check in previous commit.
2021-02-19 12:22:06 +08:00
NovaRain 5bd820f357 Code edits to a couple of fixes in AI.cpp
Renamed some hook functions.
2021-02-16 11:28:26 +08:00
NovaRain 95174b238e Fixed broken GetProto() function (again) 2021-02-10 23:51:42 +08:00
NovaRain 2efa4a91fb Fixed broken GetProto() function
Added a fix to prevent NPCs from wasting their AP to pick up
unreachable items.
2021-02-10 08:33:34 +08:00
NovaRain fb84e557fe Code edits in EngineUtils.cpp
Added comments to some defines in Enums.h.
2021-02-09 22:07:35 +08:00
NovaRain 3567ec791c Removed unnecessary code
Added some function/variable defines.
2021-02-09 10:39:41 +08:00
NovaRain 7e82313cf2 Added some tweaks for debug log
Code edits in SpeedPatch.cpp
2021-02-08 11:31:52 +08:00
NovaRain fe33dc2834 Rewrote ASM code of WorldMapFPSPatch in C++ 2021-02-07 21:11:12 +08:00
NovaRain 7c6f9df404 Moved the custom implementations of is_within_perception_ and correctFidForRemovedItem_ functions to separate files 2021-02-07 08:47:54 +08:00
NovaRain c86d816119 Preparing the code (part 1)
Moved item_w_mp_cost with hook to new items.cpp.
Updated struct/variable/function defines.
2021-02-06 11:00:31 +08:00
NovaRain 4b7d901275 Added OnCombatStart, OnCombatEnd delegates
Updated version number.
2021-02-06 10:51:23 +08:00
NovaRain 51864eaf6a Merge branch 'develop' 2021-02-04 10:21:36 +08:00
NovaRain cd828b9717 Minor code format edits in ScriptExtender/LoadGameHook.cpp 2021-02-04 10:11:48 +08:00
NovaRain 030533207f Code edits to ScriptExtender/HookScripts
Updated Structs.h
2021-02-02 11:36:03 +08:00
NovaRain 1d42a2242c Separated the loading and initialization of global scripts
* now the loading occurs before the start of a new game.
2021-02-01 11:55:21 +08:00
NovaRain 191beb8e0c Small optimization for game_loaded script function 2021-01-31 10:30:18 +08:00
NovaRain c27d1468ec Minor edits to code and document 2021-01-31 00:48:04 +08:00
NovaRain 0941b4684c Moved GNW_win_refresh and related functions to new render.cpp 2021-01-30 09:52:05 +08:00
NovaRain 866c95599d Updated Structs.h and some other files 2021-01-30 08:24:59 +08:00
NovaRain c14966f0b9 Fixed the "Leave" event of the window region
* the event procedure was not triggered when the cursor moves to
a non-scripted window.
2021-01-29 12:42:40 +08:00
NovaRain 23d50410e2 Added SmallFrameFix option
Code style edit: use !boolean instead of (boolean == false) for some
checks.
2021-01-29 12:02:40 +08:00
NovaRain 9e250aeebb Removed unnecessary hack in Perks.cpp 2021-01-28 12:52:20 +08:00
NovaRain f2efc1978a Moved trait_adjust_stat and trait_adjust_skill functions 2021-01-28 11:13:39 +08:00
NovaRain 30cabcff2d Forgot to commit vcxproj for the previous commit 2021-01-27 11:39:44 +08:00
NovaRain 939cf8a089 Moved the code of item_total_size and adjust_fid functions 2021-01-27 11:26:39 +08:00
NovaRain c5ed504c62 Code edits 2021-01-27 10:44:42 +08:00
NovaRain f9157bee6d Changed the script name search algorithm from linear to binary 2021-01-25 12:39:33 +08:00
NovaRain 16843956b5 Changed "obj_under_cursor" for the movement cursor
* the function is not designed for use with it.

Code correction in Stats.cpp.
2021-01-25 11:34:03 +08:00
NovaRain 15564dc0ab Added an option about max HP calculation to the stats ini file
Added an update to the HP stats when the map is loaded first time.
Minor code edits.
2021-01-24 12:07:40 +08:00
NovaRain be6347ba9b Updated language translation files 2021-01-22 22:24:47 +08:00
NovaRain 671065baed Updated the code for party order attack 2021-01-22 14:18:55 +08:00
NovaRain 9e403e0e6b Added a new mode to NPC combat control mod (WIP) 2021-01-21 12:59:45 +08:00
NovaRain 88050850f7 Added a new example mod gl_auto_closebox
Updated engine structs/functions/variables for future use.
2021-01-20 10:17:01 +08:00
NovaRain 4618776322 Fixed flag setting/unsetting for non-door objects 2021-01-15 08:36:01 +08:00
NovaRain ef89748eda Fixed the format of some debug messages (#195) 2021-01-14 11:36:35 +08:00
NovaRain a1c038846a Changed HOOK_DESCRIPTIONOBJ to run for all types of objects (#293) 2021-01-14 10:44:47 +08:00
NovaRain ef0bdf1e3b Added a new hook: HOOK_ROLLCHECK 2021-01-13 23:26:19 +08:00
NovaRain bde6b94855 Added a new hook: HOOK_ADJUSTRADS
Fixed a crash bug in ScriptExtender.cpp from commit c736e39.
Some adjustments to the hook injection mechanism.
2021-01-13 11:11:32 +08:00
NovaRain 4535ec9e20 Added TagSkillMode option to the skills ini file
Added a fix to the radiation handling in the engine when an NPC is under
the player's control.

Code correction in Graphics.cpp.
2021-01-12 11:52:59 +08:00
NovaRain c736e39f9e Fixed the display issue in DX9 mode
* black screen or rainbow colors when returning to the game after using
Alt+Tab in dialogue.

ASM code correction in ScriptExtender.cpp.
2021-01-08 13:27:36 +08:00
NovaRain 83a91638c2 Fixed the ID assignment for script objects and party member's items
when saving the map
2021-01-08 10:01:12 +08:00
NovaRain 97c48909c0 Added TagSkillBonus option to the skills ini file
Fixed a crash in the previous commit.
2021-01-06 11:30:29 +08:00
NovaRain dfeafc3058 Added more options for tweaking some engine perks to the perks ini file
Added tweaks to include the perk level in the calculation of the bonus
value for "Salesman" and "Demolition Expert" perks.
2021-01-05 14:09:59 +08:00
NovaRain 1219571367 Added sfx volume reduction for objects located on a different map elev
Added a fix for AI weapon switching when not having enough APs
2021-01-03 10:45:52 +08:00
NovaRain 19f6d64e5b Added a new hook: HOOK_ADJUSTPOISON
Added a fix to the poison handling in the engine when an NPC is under
the player's control.
2020-12-30 22:11:02 +08:00
NovaRain 45a523f6ca Fix for previous commit 2020-12-27 09:27:46 +08:00
NovaRain 3798247a68 Added support for panning sfx sounds
Removed the tweak that adds the city name in the description for empty
save slots (commit b0a35ee)
2020-12-26 21:57:18 +08:00
NovaRain 279f91274e Modified some of the mechanics of "interface_overlay" function
Changed "intface_redraw" with one argument to redraw the specified
interface window.
2020-12-25 14:46:47 +08:00
NovaRain 9d5bfaa059 Added "interface_overlay" script function
* for creating an additional overlay on the top of the interface window.
(document WIP)
2020-12-23 11:46:17 +08:00
NovaRain 2bc94e8036 Added sfall_func7 and sfall_func8 new opcodes
Added 3 new attrType values to "get_window_attribute" function.
Minor code edits.
2020-12-22 16:55:17 +08:00
NovaRain d82db3f572 Added stereo support for SFX and speech ACM files
(for files at 44.1 kHz sample rate)

SFX sounds that are dependent on the gsound_compute_relative_volume_
function are excluded from the search for alternative formats.
2020-12-21 14:26:33 +08:00
NovaRain b24b5124d2 Added support for ACM files at 44.1kHz sample rate 2020-12-17 16:39:18 +08:00
NovaRain db5704f653 Renamed MPClient folder to DebugEditor
Renamed FalloutClient.exe to FalloutDebug.exe
2020-12-13 12:51:24 +08:00
NovaRain 2764d2c9bc Updated some code 2020-12-13 09:37:22 +08:00
NovaRain 66058dd975 Corrected code of some hook scripts 2020-12-13 08:45:29 +08:00
NovaRain 3550289ea6 Reverted support for the D3DFMT_A8 texture format 2020-12-10 07:19:50 +08:00
NovaRain 02fba6eda1 Removed unnecessary code in Graphics.cpp
Replaced the D3DFMT_A8 texture format with D3DFMT_L8.
Minor edits to documents.
Updated version number.
2020-12-09 10:44:57 +08:00
NovaRain ac233c710d Changed the numbering of args in hookscripts.txt (#345)
* because arg numbers are 0-indexed for related functions.
2020-11-16 09:15:26 +08:00
NovaRain be5447729e Re-ordered critical table fixes in Criticals.cpp. 2020-11-03 15:16:46 +08:00
NovaRain adb159c10d Reformatted critical table fixes in Criticals.cpp 2020-11-01 09:23:34 +08:00
NovaRain 324f4d5939 Fixed the "uncalled" critical tables for some critter types
ref: https://www.nma-fallout.com/threads/219827/
2020-10-30 21:53:58 +08:00
NovaRain 50755832e3 Merge branch 'develop' 2020-10-27 00:57:16 +08:00
NovaRain f04442d4b7 Reverted the change to Message module in the previous commit 2020-10-27 00:11:31 +08:00
NovaRain dcbd6b5a23 Cleaned up define_lite.h and command_lite.h
Commented out the empty exit() in Message module.
Minor code edits.
2020-10-26 11:20:26 +08:00
NovaRain f8aa6c449a Fixed the error handling in win_fill_color
Some code fixes.
2020-10-25 08:05:20 +08:00
NovaRain 65c4cf644a Added "win_fill_color" script function 2020-10-24 12:56:26 +08:00
NovaRain 97fde2950c Added support for drawing PCX images to draw_image, draw_image_scaled, and interface_art_draw
Fixed bug in TalkingHeads.cpp.
2020-10-23 23:23:09 +08:00
NovaRain a488e9fc5b Fixed the macro guard in command_lite.h and added two macros 2020-10-21 22:36:26 +08:00
NovaRain 914c653d69 Merge branch 'develop' 2020-10-18 07:22:34 +08:00
NovaRain 6d412e97fc Minor edits to PartyControl.cpp 2020-10-18 07:16:39 +08:00
NovaRain 1141348efe Added the ability for controlled critters to use Sneak skill in combat 2020-10-15 10:36:11 +08:00
NovaRain 5c9d512d12 Fixed and improved the code in Graphics module 2020-10-15 09:30:04 +08:00
NovaRain d36031613d Added the ability to change the poison level for critters 2020-10-12 20:45:39 +08:00
NovaRain cf277efc85 Corrected code in Arrays.cpp 2020-10-12 11:01:25 +08:00
NovaRain 9a3b770182 Code optimization for array expression 2020-10-11 10:13:52 +08:00
NovaRain fa9aa6dc6f Moved some code from Graphics.cpp to the new submodule GameRender.cpp
Minor edits to MetaruleExtender.cpp and notes.txt.
2020-10-11 01:08:59 +08:00
NovaRain 3d99f6ea66 Code correction in Functions.cpp
Updated global shader example files.
2020-10-09 08:52:14 +08:00
NovaRain a02d90a52e Updated define_extra.h 2020-10-08 15:38:24 +08:00
NovaRain ce5e9cd990 Updated example mod scripts 2020-10-08 15:33:37 +08:00
NovaRain c71ca95665 Added "combat_data" script function
Added a new argument to HOOK_COMBATDAMAGE.
Removed the check for valid objects from get/set_object_data functions.
Some code fixes.
2020-10-08 13:49:58 +08:00
NovaRain 2f750a8a4b Fixed broken Print() script function
Fixed the background image of the character portrait on inv/char screens.
Renamed "print_text" to "interface_print".
2020-10-06 11:46:13 +08:00
NovaRain ac28d7293b Added "print_text" script function 2020-10-05 14:38:53 +08:00
NovaRain 51dfee26d3 Removed InterfaceDontMoveOnTop from ddraw.ini (always enabled)
Added a fix to prevent toggling the cursor for a Transparent window.
2020-10-05 10:23:17 +08:00
NovaRain cbe6be6c46 Added support for transparent interface windows (#25) 2020-10-03 11:45:25 +08:00
NovaRain 349d217257 Fixed FrmFile struct in the previous commit 2020-09-29 09:02:56 +08:00
NovaRain 4e9d4f2f37 Some code refactoring
Added a value of 2 to TextureFilter option.
2020-09-28 12:04:08 +08:00
NovaRain 5eac185bfe Minor edits to the document in previous commit 2020-09-26 22:14:18 +08:00
NovaRain e696db4b7b Added "interface_art_draw" script function
Added an argument to "intface_redraw" function to redraw all interfaces.
2020-09-26 16:15:32 +08:00
NovaRain 88d9126b18 Changed the behavior of saving/restoring hook arguments
(no need to specify the number of args when executing a nested hook)
Reverted the change of argCount in some hooks.
Disabled an obsolete fix for MultiHexPathingFix.
2020-09-25 00:07:56 +08:00
NovaRain a1d18983e4 Added the ability to get Automap window pointer
Reorganized some code to prepare for later commits.
2020-09-24 15:14:25 +08:00
NovaRain 8179583160 Correction to the hooks code
Minor edits to some code.
2020-09-23 22:37:11 +08:00
NovaRain 876616fc7d Added a new argument to HOOK_TOHIT (#339)
Added hook type 3 to HOOK_WITHINPERCEPTION (when AI selects a target)

Extended the upper limit of set_pickpocket_max and set_hit_chance_max
script functions to 999.

Added a fix for combat_is_shot_blocked_ not taking the flags of critters
in the line of fire into account.

Minor edits to ASM code of some hooks.
2020-09-22 15:43:26 +08:00
NovaRain 008692bec7 Fixed the MMX buf_to_buf_ for warning C4799
Minor edits to ASM code of some hooks.
2020-09-21 21:30:08 +08:00
NovaRain 0dd8ea5335 Added loading multiple shader files for GlobalShaderFile option
Added a sharpen filter file as a global shader example.
Set TextureFilter to be enabled by default.
2020-09-21 12:54:42 +08:00
NovaRain bf9deabded Added TextureFilter option (restored from sfall 2.x) 2020-09-20 09:58:55 +08:00
NovaRain 11bcbe2013 Moved some engine function defines from Functions.cpp to Functions_def.h
Implemented a new "buf_to_buf" function (experimental)
* need to check the backward compatibility.
2020-09-19 10:02:16 +08:00
NovaRain 806e09e501 Corrected talking heads code of Use32BitHeadGraphics
Minor code correction.
2020-09-19 00:37:16 +08:00
NovaRain 2eb1c64bc3 Removed KeepWeaponSelectMode from ddraw.ini (always enabled)
Minor edits to code and documents.
2020-09-16 10:53:39 +08:00
NovaRain a9cde5757f Fixed temporary arrays being cleared when flushing the keyboard buffer (#337)
Added a message about failed initialization of the game and exit if an error occurs.
2020-09-15 11:33:57 +08:00
NovaRain f16ba16d21 Graphics: improved the performance of DX9 mode 2020-09-15 10:21:35 +08:00
NovaRain 0ce02e2a12 Graphics & Movies refactoring (WIP/unfinished) 2020-09-13 22:10:44 +08:00
NovaRain 96447ca1d3 Updated Ammo INI Loader example script mod
* now the INI will be read only once on script initialization, not
always being re-read on each map load.
2020-09-10 14:43:46 +08:00
NovaRain a7355ad937 Added the original Fallout 1 behavior to FastShotFix (#335) 2020-09-06 08:30:20 +08:00
NovaRain 2badb5fdd2 Added a fix to the weapon check in the Fast Shot trait (#335)
* changed range check to type+range check, the same fix is also applied
to FastShotTraitFix.

Added more info to the description of FastShotFix option.
2020-09-05 10:39:22 +08:00
NovaRain 282a491718 Fixed typo in sfall.h (#334) 2020-09-03 21:05:18 +08:00
NovaRain 43fcaf41e1 Fixed EncounterTableSize option (#333)
* the encounter messages were still limited to 50 entries per table when
the value for encounters is set to greater than 50.

Fixed building the path to multihex objects.
2020-09-03 14:20:23 +08:00
NovaRain 3df322b80e Tweaked the field of view check in ObjCanSeeObj_ShootThru_Fix
And fixed a bug when the target critter has the ShootTrhu flag set
(cannot be seen by the source)

Minor edits to some comments in previous commit.
2020-09-02 14:21:38 +08:00
NovaRain 0945382369 Added support for ACM audio file playback to soundplay script function
(with volume control, #331)

Added a volume control to reduce the volume for play_sfall_sound.
Added descriptions and constant defines to documents.
Some code optimization.
Updated version number.
2020-09-01 16:10:45 +08:00
NovaRain 69ccc1cfab Merge branch 'develop' 2020-08-22 13:15:50 +08:00
NovaRain ac4e4c7868 Minor edits to Interface.cpp and ddraw.ini 2020-08-22 10:48:46 +08:00
NovaRain d46bb42efd Reorganized hooks related code 2020-08-21 12:55:18 +08:00
NovaRain aa132d9951 Moved DeathScreenFontPatch code to Interface.cpp
Added a note about DeathScreenFontPatch in ddraw.ini.

Some code edits in BugFixes.cpp and DamageMod.cpp.
2020-08-21 12:36:41 +08:00
NovaRain dfb7779e87 Reorganized the code related to the core functions of hooks
Added DeathScreenFontPatch option to use the normal font for death
screen subtitles (was using bitmap font).

Attempted to fix the melee damage display for some extreme cases when
BonusHtHDamageFix=1 and DisplayBonusDamage=0.
2020-08-20 13:32:40 +08:00
NovaRain 19df2f9eec Updated global.fx and withinperception example script
Fixed some code.
2020-08-19 15:19:11 +08:00
NovaRain e6d30d7def Added a fix to limit the maximum distance for knockback animation
* 20 hexes at max. This does not affect the knockback value in
Combat Damage hook, only the animation part.
2020-08-18 13:07:25 +08:00
NovaRain c657a9ef86 Added a fix to prevent the player from leaving the map during death anim
* when the death animation causes the player to cross an exit grid.

Fixed the height of the black background for the subtitles on death
screens when using the hi-res patch.

Added MakeJumps method to SafeWrite.cpp and devlog_f to Logging.cpp.
2020-08-17 15:07:41 +08:00
NovaRain cbccc7de4e Fixed the use of #pragma pack() directives for structures
Corrected HookFile struct in the previous commit.
2020-08-16 11:09:31 +08:00
NovaRain 8fa54d8255 Changed hs_* hook script to be searched only once on game start
* in the same fashion as global scripts, affected by AlwaysFindScripts.
2020-08-15 22:19:45 +08:00
NovaRain 46a5616b34 Fixed and improved the behavior of nested timer events in global scripts
Added a fix to prevent the execution of critter_p_proc and game events
when playing movies.

Added a debug message about a corrupted proto file.

Some minor code/document edits.
2020-08-14 21:23:08 +08:00
NovaRain ff4757d529 Fixed the playback of additional movies defined in the MovieXX options (#330)
Added the keyboard buffer cleanup function to metarule3.
2020-08-13 15:20:30 +08:00
NovaRain b0a35eec49 Added the city name in the description of a save slot by default
Corrected some code.
2020-08-13 14:38:09 +08:00
NovaRain d553e9cbdd Added a fix to remove floating text after moving to another elevation
* also update black edges of the map (HRP bug, #282)
2020-08-09 12:17:32 +08:00
NovaRain d2b1cdec46 Changed the behavior of ObjCanSeeObj_ShootThru_Fix
* now the critter can only see through objects in front of it.
2020-08-08 11:50:12 +08:00
NovaRain 37b4a18770 Added a patch to allow setting custom colors for object outlines
Added a tweak to ObjCanSeeObj_ShootThru_Fix to allow critters to see
through other critters.

Corrected some code.
2020-08-05 16:10:28 +08:00
NovaRain fd1067373a Changed the behavior for replacing art aliases for critters
Added ANIM_charred_body/ANIM_charred_body_sf animations to art aliases
(#323)

Minor code edit to OverrideMusicDir (nop the rest to avoid leaving
garbage bytes)
2020-08-03 14:28:01 +08:00
NovaRain 82b75f4ea2 Corrected combat_attack_gcsd code in the previous commit
Added DAM_PRESERVE_FLAGS to attack_complex for keeping result flags.
Fixed OverrideMusicDir=2 not working (#295)
2020-08-02 19:43:51 +08:00
NovaRain 435180d157 Rewrote several fixes for attack_complex in C++ and merged them
Added a default fix for attack_complex to untie target_results from
attacker_results.
2020-08-01 10:22:30 +08:00
NovaRain 694d97e123 Added more fixes for the arguments of attack_complex function:
* fixed result flags for the attacker and the target when calling
attack_complex function (#323)

* tweaked how attacker_results/target_results work when
AttackComplexFix is enabled.

Minor code edits.
2020-07-31 20:35:58 +08:00
NovaRain a27f020edc Added support for delayed speech playback to AllowDShowSound
(for synchronizing with subtitles when playing endgame slideshow)
2020-07-30 10:29:06 +08:00
NovaRain da5484668c Added a new value 2 to AllowDShowMovies
* for forcing avi videos to fit the screen width.

Disabled warning C4995 (e.g. wcscpy in Movies.cpp)
2020-07-29 14:16:45 +08:00
NovaRain 600360638e Added volume control support for avi movies
Fixed implementation bugs when playing avi movies.
Added a couple of engine variable defines.
2020-07-28 15:21:47 +08:00
NovaRain 19be167c19 Further implementation of speech playback for alternative sound files 2020-07-26 08:46:16 +08:00
NovaRain deaaf6a137 Added a function extension for vanilla metarule3 function
Added SET_HORRIGAN_ENCOUNTER function to metarule3.
Updated German translation.
2020-07-24 21:20:48 +08:00
NovaRain 29da941582 WIP: Fixed sfx/speech playback for alternative sound files 2020-07-22 12:24:20 +08:00
NovaRain b178e15b31 Implemented CodeType enums in some SafeWrite8
Replaced some SafeWriteX with SafeWriteBatch.
Minor edits to documents.
2020-07-21 12:28:15 +08:00
NovaRain 2491cb22af Removed some redundant code 2020-07-19 08:38:48 +08:00
NovaRain 85afa1e4d8 Fixed the default values for the MovieXX options
Added some comments to elevators.ini & other codes.
Updated version number.
2020-07-18 22:13:54 +08:00
NovaRain 64da4dce6c Uploaded language translation files to repo
Updated German (#326) and Russian translations.
2020-07-08 09:55:30 +08:00
NovaRain e10b7ca718 Merge branch 'develop' 2020-07-03 21:37:11 +08:00
NovaRain 586d41cce8 Minor edit to ddraw.ini 2020-07-03 21:36:51 +08:00
NovaRain 30d249f02e Fixed NPC stuck in an animation loop in combat (#321)
* this happens when trying to move close to a multihex critter.
2020-07-01 09:47:02 +08:00
NovaRain 467d895ba6 Removed AutoSearchPath from ddraw.ini
* the folder path for auto-loading custom files is now constant.
2020-06-30 22:02:21 +08:00
NovaRain bfaed2eb68 Fixed ASM error in the previous commit 2020-06-30 15:49:32 +08:00
NovaRain a43a28fe8b Fixed broken PlayIdleAnimOnReload option (#320)
(in commit af049ea)

Improved the fix for incorrect positioning after exiting small/medium
locations.
2020-06-30 12:26:56 +08:00
NovaRain 5dd8c441b9 Fixed the code for "display_stats" script function
Minor edit to Perks.cpp.
2020-06-29 23:02:45 +08:00
NovaRain 440cfbd72c Added a fix to prevent showing an empty perk selection window 2020-06-29 12:47:57 +08:00
NovaRain 1db8988368 Added "get_stat_max/min" script functions (#307)
Added updating player's stats on the char screen to "display_stats"
script function (#314)
2020-06-29 11:53:12 +08:00
NovaRain 6ecc1fcd1f Corrected the code for multihex retargeting tile
Small optimization to sfall function code.
2020-06-28 23:11:51 +08:00
NovaRain 6c8bbea764 Re-fix for the previous commit 2020-06-28 09:51:29 +08:00
NovaRain d947150dc1 Corrected the fix from the previous commit 2020-06-27 10:12:34 +08:00
NovaRain f5ecaa8bd2 Fixed the hang/freeze in combat (from commit d888161)
Added a fix for retargeting tile for multihex critters.
2020-06-27 09:46:43 +08:00
NovaRain e389bb0dc5 Fixed bugs in the hero appearance mod:
* gender was not reset properly when creating a new character (#309)
* the player was missing some fire/electrical death animations (#310)
2020-06-14 09:25:57 +08:00
NovaRain 94296b40d8 Moved static addresses into respective funcs in Stats.cpp 2020-06-13 00:24:13 +08:00
NovaRain fab5aa2f2f Fixed Auto Doors example script mod
Cosmetic changes to the text descriptions in Perks.ini.
2020-06-13 00:14:44 +08:00
NovaRain 703073e255 Increased the max width of the player name on the char screen (#305)
Updated version number.
2020-06-04 06:38:48 +08:00
NovaRain d888161128 Some bug fixes regarding multihex critters in shoot blocking 2020-05-24 11:30:32 +08:00
NovaRain ea921aabbd Merge branch 'develop' 2020-05-21 09:42:23 +08:00
NovaRain b263b69fa3 Renamed all script opcode handlers with op_ prefix
Renamed all metarule functions with mf_ prefix.
2020-05-20 11:30:25 +08:00
NovaRain 6bb56b0f95 Minor code fixes in AI.cpp:
* Fixed NPCs being unable to select a burst attack mode if the line of
fire was blocked.

* Changed the return point of combat_ai_hook_FleeFix to run
ai_check_drugs_ first.

Changed the debug message about missing art file for critters to be
displayed in game only when in sfall debugging mode.
2020-05-19 09:48:46 +08:00
NovaRain 9a4f0c7505 Merge branch 'develop' 2020-05-11 09:35:28 +08:00
NovaRain c89a18522d Fixed ai_move_away_ engine function
Some minor fixes.
2020-05-10 09:56:11 +08:00
NovaRain c7ccb7f2c2 Edited the msg for SkipLoadingGameSettings a bit
Added a few more defines.
2020-05-08 10:44:37 +08:00
NovaRain b25ca683f3 Cosmetic changes to the code:
Use double underscore for stdcall and "asm" keyword.
2020-05-07 12:27:53 +08:00
NovaRain e28b3a5796 Minor code edits to Combat.cpp
Added some function defines.
2020-05-07 12:13:28 +08:00
NovaRain a9c74501df Added checking AP cost to ai_pick_hit_mode_ engine function 2020-05-07 09:47:57 +08:00
NovaRain b03b93d6fc Added a tweak for finding new targets for PMs
* before they would "forget" their current target when trying to find
new ones (only 3), now the current target is included as one of
potential targets.

Tweaked the code of MultiHexPathingFix.
2020-05-05 12:13:11 +08:00
NovaRain 1f696b9f12 Added internal implementation of engine functions with hooks:
* item_w_mp_cost_ with CALCAPCOST
* is_within_perception_ with WITHINPERCEPTION
2020-05-01 10:27:05 +08:00
NovaRain 3d2d1cdf2a Added combat rating check to "Snipe" distance preference fix 2020-05-01 08:00:49 +08:00
NovaRain 42347ac062 Added a fix to reduce friendly fire in burst attacks (experimental) 2020-04-30 16:01:57 +08:00
NovaRain 007b415740 Changed the priority of files in AutoSearchPath
* now they have higher priority than the PatchFileXX options.

Minor code edits/fixes.
2020-04-30 10:13:44 +08:00
NovaRain 35d2491bcb Added a fix for AI behavior for "Snipe" distance preference
Added a check for for the weapon range and the distance to the target
when AI is choosing weapon attack modes.
2020-04-28 10:55:56 +08:00
NovaRain ece76ee726 Changed the fix for AI target selection in commit f731de7
* NPCs will reload the weapon in the same turn (and attack if have
enough AP left) if weapon is empty while selecting targets.

Misc code edits.
2020-04-27 14:25:40 +08:00
NovaRain d6f4a23527 Fixed AllowDShowSound=2 not working
Limited NumSoundBuffers to the max of 32.
Fixed replacing Body_Torso with Body_Uncalled (from commit 7e31713)
Corrected the code in the previous commit.
2020-04-23 12:33:00 +08:00
NovaRain 045ad2f5d7 Added a tweak to the miss message in combat
* if the main target has Flat flag set, remove the message about hitting
another object.

Minor code edits to DebugEditor.cpp & MiscPatches.cpp.
2020-04-22 11:32:03 +08:00
NovaRain 13703f1a3b Improved the fix for placing PID_CORPSE_BLOOD obj on the lower layer
(didn't work correctly after re-entering the map.)

Fixed CorpseDeleteTime not setting the timer correctly.
2020-04-21 10:54:35 +08:00
NovaRain 58bb77d79f Fixed GvarID option behavior in Drugs.ini
Reverted incorrect code change of SpeedPatch.cpp in previous commit.
Some code edits to Explosions.cpp and Perks.cpp.
2020-04-19 09:58:47 +08:00
NovaRain 229371e4ab Added use_item_on_dude macro to sfall.h
Various code edits:
* Implemented more HookCalls/MakeCalls/SafeWriteBatch in code.
* Moved return/jump address consts into their respective functions.
* Changed for-loop with iterators to use pre-increment.
2020-04-18 21:19:22 +08:00
NovaRain 1884e279c7 Fixed ReloadWeaponKey for using any non-weapon item (#84) 2020-04-18 10:44:17 +08:00
NovaRain e81d79e43e Fixed "loot_obj" script function 2020-04-18 08:57:02 +08:00
NovaRain f731de7a25 Fixed AI target selection for no ammo or target out of range cases 2020-04-18 08:33:08 +08:00
NovaRain 0d6bc33279 Re-fixed automatically ending combat
Updated version number.
2020-04-18 07:28:00 +08:00
NovaRain 3377516f67 Merge branch 'develop' 2020-04-05 22:14:57 +08:00
NovaRain 359c79a854 Fixed NPCs not fully reloading a weapon sometimes
* NPCs use only one box per reload. If the weapon has more ammo
capacity than a box of ammo (e.g. miniguns and BB gun), it'll take
several tries for them to fully reload it.
2020-04-05 08:19:31 +08:00
NovaRain 41652ec459 Moved static addresses into respective funcs in BugFixes & MiscPatches 2020-04-03 23:14:23 +08:00
NovaRain ca4e506f1d Some code correction in BugFixes
Minor edits to documents.
2020-04-03 12:16:09 +08:00
NovaRain 6e05ca65fd Some code/document edits 2020-04-02 11:32:22 +08:00
NovaRain 873d9f81c2 Edited the description of RadEffectsRemovalMsg option 2020-04-01 22:09:46 +08:00
NovaRain 0978769dfc Fixed loading savegame for "NPC turns into a container" bug fix
Added RadEffectsRemovalMsg option for radiation fixes.

Some code/document correction.
2020-03-31 21:51:41 +08:00
NovaRain 29608bb51c Added ActiveGeigerMsgs option and radiation fixes
Changed "Radiated" to be highlighted in red color when the player is
under the influence of negative effects of radiation.
2020-03-30 21:06:11 +08:00
NovaRain ba911375a9 Fixed a crash when using older versions of HRP
Fixed potential crash/bug when alt-tab out of game and get back.
Edited OnDeath hook code to minimize its hook points to the engine.
Minor edits to ddraw.ini.
2020-03-26 14:06:46 +08:00
NovaRain ce5c65d37f Fixed stuttering when playing avi movies
Fixed a crash when playing mve movies without the hi-res patch.

Minor edits to ddraw.ini and function notes.txt.
2020-03-24 10:53:00 +08:00
NovaRain ffd397d9aa Added performance patches, some code moved to MiscPathes module
Minor edits to ddraw.ini.
2020-03-22 09:00:25 +08:00
NovaRain 349cffac0c Added a new "fullscreen windowed" DX9 mode
Added saving the position of the game window to ddraw.ini
2020-03-20 12:24:48 +08:00
NovaRain dfdcd86134 Refactored ASM code of script opcode handlers
Included call_offset_xx functions for AllowUnsafeScripting=2 (#288)
2020-03-19 12:55:01 +08:00
NovaRain accdeae6ad Added a new value to AllowUnsafeScripting
* for disabling the memory address check in unsafe functions (#288)
2020-03-17 13:26:02 +08:00
NovaRain 288a8fedfd Improved and fixed the playback of alternative sound files
Added a new mode to play_sfall_sound script function.

Minor code corrections.
2020-03-17 13:06:34 +08:00
NovaRain eb777e6d19 Fixed the return value of play_sfall_sound function
* before it returned a raw pointer instead of the ID number of the
played sound.
2020-03-12 11:53:45 +08:00
NovaRain dd2469b78f Moved allowDShowSound code from Movies to Sound module 2020-03-12 10:03:43 +08:00
NovaRain 8d375dd81a Refactored ASM code of script handlers in Misc.cpp
Minor code edits.
2020-03-07 14:21:12 +08:00
NovaRain 7f087d1c30 Minor code edits to AI module 2020-02-29 18:58:38 +08:00
NovaRain e7e5da866a Added a new value to the 'mark_state' arg of mark_area_known function
* 3 - uncovers locations without highlighting their sub-tiles.
(Fallout 1 behavior)
2020-02-29 08:36:30 +08:00
NovaRain ac0b0ef7ef Fixed Fill_W not uncovering all tiles to the left (#287) 2020-02-28 07:41:49 +08:00
NovaRain c2626de4fa Fixed a crash or animation glitch of the critter in combat (beta fix)
* when an explosion from explosives and the AI attack animation are
performed simultaneously.
2020-02-25 11:38:03 +08:00
NovaRain e4d395224a Minor code fix for Graphics.cpp
Added notes/correction to hookscripts.txt.
2020-02-22 15:49:13 +08:00
NovaRain 4487bbfeba Fixed the player's money not being displayed after barter (#286)
Restored TownMapHotkeysFix option.

Updated version number.
2020-02-22 15:31:17 +08:00
NovaRain e5eb5cc275 Minor code improvement in Graphics.cpp 2020-02-09 09:23:50 +08:00
401 changed files with 40680 additions and 14560 deletions
+1
View File
@@ -0,0 +1 @@
*.ssl linguist-language=Pascal
+12
View File
@@ -0,0 +1,12 @@
# https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "monthly"
target-branch: "develop"
labels:
- "dependencies"
+51
View File
@@ -0,0 +1,51 @@
name: Build
on:
push:
branches:
- 'develop'
- 'github-action'
paths:
- '.github/workflows/build.yml'
- 'action.yml'
- 'sfall/**'
jobs:
Build:
name: sfall
runs-on: windows-2019
steps:
- name: Clone sfall
uses: actions/checkout@v3
# Action is used twice for self-testing only
# DevXP build results are intentionally *not* included in artifact
- name: ReleaseXP build
id: build
uses: ./
with:
release-xp: true
- name: DevXP build
uses: ./
with:
dev-xp: true
- name: Prepare artifact
run: |
:
mkdir -p sfall-build
cp artifacts/ddraw.ini sfall-build
cp artifacts/sfall.dat sfall-build
cp "${{ steps.build.outputs.release-xp }}" sfall-build
shell: bash
- name: Upload artifacts
uses: actions/upload-artifact@v3
with:
name: sfall-build
path: sfall-build
retention-days: 14
+34
View File
@@ -0,0 +1,34 @@
name: github pages
on:
push:
branches:
- master
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: '3.x'
- name: Install dependencies
run: |
sudo apt -y -qq install bundler python3-pip
pip3 install ruamel.yaml --user
- name: Build
run: ./docs/generate.sh
- name: Deploy
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./docs/_site
user_name: 'github-actions[bot]'
user_email: 'github-actions[bot]@users.noreply.github.com'
+8
View File
@@ -55,8 +55,10 @@ nb-configuration.xml
# Build results
[Dd]ebug/
[Dd]ebugPublic/
[Dd]evXP/
[Rr]elease/
[Rr]eleases/
[Rr]eleaseXP/
x64/
x86/
build/
@@ -222,3 +224,9 @@ FakesAssemblies/
# Visual Studio 6 workspace options file
*.opt
sfall/postbuild.cmd
# jekyll build files
docs/_site
docs/.sass-cache
docs/.jekyll-metadata
docs/pages/*.md
+936
View File
File diff suppressed because it is too large Load Diff
@@ -23,6 +23,7 @@
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent() {
this.components = new System.ComponentModel.Container();
this.dataGridView1 = new System.Windows.Forms.DataGridView();
this.Column0 = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -34,6 +35,7 @@
this.bSGlobals = new System.Windows.Forms.Button();
this.bArrays = new System.Windows.Forms.Button();
this.bEdit = new System.Windows.Forms.Button();
this.redrawTimer = new System.Windows.Forms.Timer(this.components);
this.bCrittersLvar = new System.Windows.Forms.Button();
((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).BeginInit();
this.SuspendLayout();
@@ -154,6 +156,11 @@
this.bEdit.UseVisualStyleBackColor = true;
this.bEdit.Click += new System.EventHandler(this.bEdit_Click);
//
// redrawTimer
//
this.redrawTimer.Interval = 200;
this.redrawTimer.Tick += new System.EventHandler(this.timer1_Tick);
//
// bCrittersLvar
//
this.bCrittersLvar.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
@@ -202,6 +209,7 @@
private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
internal System.Windows.Forms.Timer redrawTimer;
private System.Windows.Forms.Button bCrittersLvar;
}
@@ -137,6 +137,7 @@ namespace FalloutClient {
sr.Close();
}
Redraw();
redrawTimer.Start();
}
private void DebugEditor_FormClosing(object sender, FormClosingEventArgs e) {
@@ -188,6 +189,7 @@ namespace FalloutClient {
default:
return;
}
redrawTimer.Stop();
if (e.ColumnIndex == 2) {
string str = dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString();
int val;
@@ -211,11 +213,13 @@ namespace FalloutClient {
connection.WriteInt(converter.GetAsInt(val));
}
}
redrawTimer.Start();
}
private void bEdit_Click(object sender, EventArgs e) {
if (dataGridView1.SelectedRows.Count == 0) return;
int i = (int)dataGridView1.SelectedRows[0].Tag;
redrawTimer.Stop();
switch (mode) {
case Mode.Arrays: {
DataType[] types = new DataType[connection.ArrayLengths[i]];
@@ -333,6 +337,7 @@ namespace FalloutClient {
}
break;
}
redrawTimer.Start();
}
private void bCrittersLvar_Click(object sender, EventArgs e) {
@@ -381,5 +386,9 @@ namespace FalloutClient {
private void dataGridView1_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e) {
dataGridView1.Rows[e.RowIndex].Tag = e.RowIndex;
}
private void timer1_Tick(object sender, EventArgs e) {
connection.WriteDataType(DataTypeSend.RedrawGame);
}
}
}
@@ -129,4 +129,7 @@
<metadata name="Column3.UserAddedColumn" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="redrawTimer.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
</root>
@@ -48,8 +48,10 @@ namespace FalloutClient {
}
public static string[] ShowEditor(DebugEditor form, string[] names, DataType[] types, string[] values, bool isMap = false) {
form.redrawTimer.Start();
EditorWindow editor = new EditorWindow(names, types, values, isMap);
editor.ShowDialog();
form.redrawTimer.Stop();
if (editor.save) {
if (valueInHex) editor.ConvertValues(false);
return editor.values;
@@ -70,8 +72,10 @@ namespace FalloutClient {
}
public static string[] ShowEditor(DebugEditor form, string[] lvalues) {
form.redrawTimer.Start();
EditorWindow editor = new EditorWindow(lvalues);
editor.ShowDialog();
form.redrawTimer.Stop();
if (editor.save) {
if (valueInHex) editor.ConvertValues(false);
return editor.values;
@@ -15,7 +15,8 @@ namespace FalloutClient {
if (args.Length == 1 && args[0] == "-debugedit") {
Application.Run(new DebugEditor(new EditorConnection()));
} else {
MessageBox.Show("The debug editor can only be run from the game.",
MessageBox.Show("The debug editor can only be run from the game.\n" +
"Use the key assigned to the DebugEditorKey option in ddraw.ini to run the debugger.",
"sfall Debug Editor", MessageBoxButtons.OK, MessageBoxIcon.Stop);
}
}
@@ -31,6 +32,7 @@ namespace FalloutClient {
SetArray = 10,
GetLocal = 11,
SetLocal = 12,
Exit = 254
Exit = 254,
RedrawGame = 255
}
}
@@ -10,7 +10,7 @@ using System.Runtime.InteropServices;
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("sfall")]
[assembly: AssemblyCopyright("Copyright © 2019")]
[assembly: AssemblyCopyright("Copyright (C) 2022")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
@@ -29,5 +29,5 @@ using System.Runtime.InteropServices;
// Build Number
// Revision
//
[assembly: AssemblyVersion("4.1.9.0")]
[assembly: AssemblyFileVersion("4.1.9.0")]
[assembly: AssemblyVersion("4.1.9.1")]
[assembly: AssemblyFileVersion("4.1.9.1")]
@@ -9,14 +9,13 @@
<OutputType>WinExe</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>FalloutClient</RootNamespace>
<AssemblyName>FalloutClient</AssemblyName>
<AssemblyName>FalloutDebug</AssemblyName>
<FileUpgradeFlags>
</FileUpgradeFlags>
<OldToolsVersion>3.5</OldToolsVersion>
<UpgradeBackupLocation>
</UpgradeBackupLocation>
<TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
<IsWebBootstrapper>false</IsWebBootstrapper>
<PublishUrl>publish\</PublishUrl>
<Install>true</Install>
<InstallFrom>Disk</InstallFrom>
@@ -29,6 +28,7 @@
<MapFileExtensions>true</MapFileExtensions>
<ApplicationRevision>0</ApplicationRevision>
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
<IsWebBootstrapper>false</IsWebBootstrapper>
<UseApplicationTrust>false</UseApplicationTrust>
<BootstrapperEnabled>false</BootstrapperEnabled>
</PropertyGroup>
@@ -42,14 +42,14 @@
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<DebugType>none</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
<DebugSymbols>true</DebugSymbols>
<DebugSymbols>false</DebugSymbols>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
+37 -3
View File
@@ -1,6 +1,10 @@
# sfall
A set of engine modifications for the classic game Fallout 2 in form of a DLL, which modifies executable in memory without changing anything in EXE file itself.
[![License](https://img.shields.io/badge/License-GPL--3.0-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
[![Dev Build](https://github.com/phobos2077/sfall/actions/workflows/build.yml/badge.svg?branch=develop)](https://github.com/phobos2077/sfall/actions/workflows/build.yml)
[![GitHub Pages](https://github.com/phobos2077/sfall/actions/workflows/gh-pages.yml/badge.svg)](https://github.com/phobos2077/sfall/actions/workflows/gh-pages.yml)
A set of engine modifications for the classic game Fallout 2 in the form of a DLL, which modifies executable in memory without changing anything in EXE file itself.
**Engine modifications include:**
- Better support for modern operating systems
@@ -9,8 +13,38 @@ A set of engine modifications for the classic game Fallout 2 in form of a DLL, w
- Many additional features for users, such as item highlight button, party member control, etc.
- Extended scripting capabilities for modders (many new opcodes to control sfall features as well as previously unavailable vanilla engine functions)
Original author: **Timeslip**
Original author: timeslip
Original description: A set of engine modifications for the classic game Fallout 2 by Interplay. Includes fixes for bugs in the original engine, allows Fallout to run correctly on modern operating systems, and adds additional features for modders.
Original description: A set of engine modifications for the classic game Fallout 2 by Interplay. Includes fixes for bugs in the original engine, allows fallout to run correctly on modern operating systems, and adds additional features for modders.
## Installation
- Download `sfall_*.7z` from the [release archive](https://sourceforge.net/projects/sfall/files/).
- Extract `ddraw.dll`, `ddraw.ini`, `sfall-mods.ini`, `sfall.dat`, and `data` folder to Fallout's base directory (i.e. the one that contains `fallout2.exe`).
- __Important Note:__\
If you are using a mod that already included sfall (e.g. killap's [Unofficial Patch](https://github.com/BGforgeNet/Fallout2_Unofficial_Patch) or [Restoration Project](https://github.com/BGforgeNet/Fallout2_Restoration_Project)), then that mod has probably included a custom modified `ddraw.ini`. In that case, overwriting it with sfall's vanilla `ddraw.ini` will be likely break your game. Instead, only overwrite `ddraw.dll`, and keep the mod's existing copy of `ddraw.ini`. (Or, if you know what you're doing, you can merge them together by hand.)
- The folder `translations` contains translations of some of the strings that sfall displays in the game. To use a translation, copy this folder to Fallout's base directory too, and then in `ddraw.ini` change the __TranslationsINI__ setting to `.\translations\<your language>.ini`.
## Uninstallation
Delete `ddraw.dll`, `ddraw.ini`, `sfall-mods.ini`, and `sfall.dat` from your Fallout directory. Also, delete `gl_highlighting.int` and `gl_partycontrol.int` from Fallout's `data\scripts\` directory.
## Usage
This mod is configured via the `ddraw.ini` and `sfall-mods.ini` files, which can be opened with any text editor. Details of every configerable option are included in those files. Where a comment refers to a DX scancode, the complete list of codes can be found at the link below:\
https://kippykip.com/b3ddocs/commands/scancodes.htm
In a default installation using an unmodified copy of `ddraw.ini`, the middle mouse button will be set to switch between weapons and the mouse wheel will be set to scroll through any menus that respond to the up/down arrow keys. Holding Ctrl and hitting numpad keys 0 to 6 (with Num Lock off) will adjust the game speed. Holding left Ctrl will let you move a whole stack of items at once. Pressing left Shift will highlight items on the ground. The script extender and any engine fixes are also enabled. Most of the options that change gameplay in some way not originally intended by the developers are disabled.
For [__Wine__](https://www.winehq.org/) users:\
You need to set DLL overrides for `ddraw.dll` to __"native, builtin"__ in `winecfg` or use `WINEDLLOVERRIDES="ddraw=n,b"` to run Fallout from the command line. If you want to play alternative sound files, you'll also need to install GStreamer Good 32-bit plugins.
## Additional info
* [Changelog](CHANGELOG.md)
* [Scripting Documentation](https://sfall-team.github.io/sfall/)
* Fallout Engine IDA Database: [for IDA Pro 6.8](https://www.dropbox.com/s/tm0nyx0lnk4yui0/Fallout_1_and_2_IDA68.rar?dl=1 "Download from Dropbox") | [for IDA Pro 7.0](https://www.dropbox.com/s/61srq09pn8grfpu/Fallout_1_and_2_IDA70.rar?dl=1 "Download from Dropbox") (comments are in Russian)
* [Fallout 2 Reference Edition](https://github.com/alexbatalov/fallout2-re)
+139
View File
@@ -0,0 +1,139 @@
name: 'sfall'
description: 'Builds sfall binaries'
author: '@wipe2238'
###
#
# Example:
#
# - name: Build sfall
# id: sfall
# uses: phobos2077/sfall@develop
# with:
# release-xp: true
#
# - name: Copy sfall to mod directory
# run: copy "${{ steps.sfall.outputs.release-xp }}" "my/mod/directory/ddraw.dll"
#
###
# While both inputs are marked as required, users needs to set only one of them (at minimum) to 'true' for action to work
inputs:
release-xp:
description: 'Set to true to enable building with ReleaseXP configuration'
required: true
dev-xp:
description: 'Set to true to enable building with DevXP configuration'
required: true
# Outputs are always using Windows directory separator (`\`)
outputs:
release-xp:
description: 'Full path to ddraw.dll built with ReleaseXP configuration'
value: ${{ steps.build-release-xp.outputs.ddraw-dll }}
dev-xp:
description: 'Full path to ddraw.dll built with DevXP configuration'
value: ${{ steps.build-dev-xp.outputs.ddraw-dll }}
dev-xp-pdb:
description: 'Full path to ddraw.pdb built with DevXP configuration'
value: ${{ steps.build-dev-xp.outputs.ddraw-pdb }}
runs:
using: 'composite'
steps:
# Quick check for things which should never happen
- name: Sanity checks
run: |
if [[ "${{ runner.os }}" != "Windows" ]]; then
echo "[ERROR] This action can only be used on Windows"
exit 1
elif [[ "${{ inputs.release-xp }}" != "true" ]] && [[ "${{ inputs.dev-xp }}" != "true" ]]; then
echo "[ERROR] At least one of following inputs must be set to 'true' -- 'release-xp', 'dev-xp'"
exit 1
#
elif [[ ! -d "$(cygpath --unix "$GITHUB_ACTION_PATH/sfall/")" ]]; then
echo "[ERROR] Solution directory not found -- 'sfall\\'"
exit 1
elif [[ ! -f "$(cygpath --unix "$GITHUB_ACTION_PATH/sfall/ddraw.sln")" ]]; then
echo "[ERROR] Solution file not found -- 'sfall\\ddraw.sln'"
exit 1
fi
#
shell: bash
# DXSDK directory must be prepared only once, in case action is used N times
# Using `.lib` suffix to make sure directory is ignored by git in exotic scenarios
# Using `::set-output` to make sure workflow environment remains unchanged
- name: Prepare DXSDK directory
id: dxsdk
run: |
DXSDK_DIR="$GITHUB_ACTION_PATH/sfall/DXSDK.lib"
if [[ ! -d "$DXSDK_DIR" ]]; then
echo "::group::Prepare DXSDK directory"
#
git clone --quiet https://github.com/NovaRain/DXSDK_Collection.git "$DXSDK_DIR"
cp "$DXSDK_DIR/DXSDK_Aug2007/Lib/x86/dinput.lib" "$DXSDK_DIR/DXSDK_Jun2010/Lib/x86/"
cp "$DXSDK_DIR/DXSDK_Feb2010/Lib/x86/ddraw.lib" "$DXSDK_DIR/DXSDK_Jun2010/Lib/x86/"
#
echo "::endgroup::"
fi
echo "::set-output name=dir::$(cygpath --windows "$DXSDK_DIR/DXSDK_Jun2010/")"
shell: bash
# MSBuild is not in PATH on Windows machines
# Using `::set-output` to make sure workflow environment remains unchanged
- name: Prepare MSBuild
id: msbuild
run: |
echo "::group::Prepare MSBuild"
MSBUILD_EXE="$("/c/Program Files (x86)/Microsoft Visual Studio/Installer/vswhere.exe" -latest -requires Microsoft.Component.MSBuild -find MSBuild/**/Bin/MSBuild.exe)"
echo "::set-output name=exe::$MSBUILD_EXE"
echo "::endgroup::"
shell: bash
# Creating empty `PostBuild.cmd` to avoid false-positive build error
- name: Build ReleaseXP
id: build-release-xp
run: |
if [[ "${{ inputs.release-xp }}" == "true" ]]; then
echo ::group::Build ReleaseXP
#
echo "@echo off" > "$GITHUB_ACTION_PATH/sfall/PostBuild.cmd"
"${{ steps.msbuild.outputs.exe }}" "$GITHUB_ACTION_PATH/sfall/ddraw.sln" -p:Configuration=ReleaseXP -p:Platform=Win32 -p:PlatformToolset=v140_xp
#
echo "::set-output name=ddraw-dll::$(cygpath --windows "$GITHUB_ACTION_PATH/sfall/ReleaseXP/ddraw.dll")"
echo "::endgroup::"
fi
env:
DXSDK_DIR: ${{ steps.dxsdk.outputs.dir }}
shell: bash
# Creating empty `PostBuild.cmd` to avoid false-positive build error
- name: Build DevXP
id: build-dev-xp
run: |
:
if [[ "${{ inputs.dev-xp }}" == "true" ]]; then
echo "::group::Build DevXP"
#
echo "@echo off" > "$GITHUB_ACTION_PATH/sfall/PostBuild.cmd"
"${{ steps.msbuild.outputs.exe }}" "$GITHUB_ACTION_PATH/sfall/ddraw.sln" -p:Configuration=DevXP -p:Platform=Win32 -p:PlatformToolset=v140_xp
#
echo "::set-output name=ddraw-dll::$(cygpath --windows "$GITHUB_ACTION_PATH/sfall/DevXP/ddraw.dll")"
echo "::set-output name=ddraw-pdb::$(cygpath --windows "$GITHUB_ACTION_PATH/sfall/DevXP/ddraw.pdb")"
echo "::endgroup::"
fi
env:
DXSDK_DIR: ${{ steps.dxsdk.outputs.dir }}
shell: bash

Some files were not shown because too many files have changed in this diff Show More