Compare commits

...
95 Commits
Author SHA1 Message Date
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 281823e97d Release 4.3.2 2021-11-10 08:45:54 +08:00
NovaRain c9ce0aa0ce Release 4.3.1 (with updated doc) 2021-10-15 10:52:35 +08:00
NovaRain 2d54e376c6 Release 4.3.1 2021-10-15 10:39:27 +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
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
141 changed files with 4120 additions and 1880 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"
+2 -2
View File
@@ -13,11 +13,11 @@ on:
jobs:
Build:
name: sfall
runs-on: windows-latest
runs-on: windows-2019
steps:
- name: Clone sfall
uses: actions/checkout@v2
uses: actions/checkout@v3
# Action is used twice for self-testing only
# DevXP build results are intentionally *not* included in artifact
+1 -1
View File
@@ -10,7 +10,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v3
- name: Setup Python
uses: actions/setup-python@v2
+1 -1
View File
@@ -55,7 +55,7 @@ nb-configuration.xml
# Build results
[Dd]ebug/
[Dd]ebugPublic/
[Dd]evXP
[Dd]evXP/
[Rr]elease/
[Rr]eleases/
[Rr]eleaseXP/
+8
View File
@@ -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;
}
+9
View File
@@ -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);
}
}
}
+3
View File
@@ -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>
+4
View File
@@ -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;
+2 -1
View File
@@ -32,6 +32,7 @@ namespace FalloutClient {
SetArray = 10,
GetLocal = 11,
SetLocal = 12,
Exit = 254
Exit = 254,
RedrawGame = 255
}
}
+3 -3
View File
@@ -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")]
+10 -3
View File
@@ -1,7 +1,10 @@
# sfall
[![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 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
@@ -11,7 +14,11 @@ A set of engine modifications for the classic game Fallout 2 in form of a DLL, w
- 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.
---
#### Fallout Engine IDA Database
[Download for IDA Pro 6.8](https://www.dropbox.com/s/tm0nyx0lnk4yui0/Fallout_1_and_2_IDA68.rar?dl=1 "Download from Dropbox")
| [Download 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)
+1
View File
@@ -78,6 +78,7 @@ runs:
#
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
+2
View File
@@ -16,6 +16,8 @@ PartyOrderAttackHuman=I'll take care of it.|Okay, I got it.|Sounds like a plan.
PartyOrderAttackCreature=::Growl::
PartyOrderAttackRobot=::Beep::
HiResInfo=This version of sfall has its own integrated High Resolution Patch mode, which is compatible with the settings of the High Resolution Patch by Mash.\n\nIf you want to continue using the Hi-Res Patch by Mash without seeing this message, disable the 'HiResMode' option in ddraw.ini.\nOr you can disable the external Hi-Res Patch to get new graphics improvements from sfall.\n\nDo you want to disable the High Resolution Patch by Mash?
[AppearanceMod]
RaceText=Race
StyleText=Style
+2 -2
View File
@@ -4,10 +4,10 @@
Key=42
; Set to 1 to also highlight containers
Containers=1
Containers=0
; Set to 1 to also highlight lootable corpses
Corpses=1
Corpses=0
; Set to 1 to only highlight objects in the player's line-of-sight
CheckLOS=0
+27 -36
View File
@@ -1,8 +1,13 @@
;sfall configuration settings
;v4.3.3
;v4.3.5
[Main]
;Change to 1 if you want to use command line args to tell sfall to use another ini file
;Set to 1 to enable the built-in High Resolution Patch mode that is similar to the hi-res patch by Mash
;The required settings will be read from the f2_res.ini configuration file of the original hi-res patch
;This option is always read from the main ddraw.ini file
HiResMode=1
;Set to 1 if you want to use command line arguments to tell sfall to use another ini file
;This option is always enabled in 4.3.3/3.8.33 or later. The information is left for reference only
UseCommandLine=0
@@ -14,7 +19,7 @@ UseCommandLine=0
[ExtraPatches]
;This section allows you to set multiple paths to folders containing mods or patches that will be loaded by the game
;If DataLoadOrderPatch is enabled, the data load order is:
;master_patches > critter_patches > PatchFile99..PatchFile0 > patchXXX.dat > critter_dat > f2_res_patches > f2_res_dat > master_dat
;master_patches > critter_patches > [extra patches] > patchXXX.dat > sfall.dat > critter_dat > f2_res_patches > f2_res_dat > master_dat
;Paths to folders and Fallout .dat files are supported
;The PatchFile## options are available from 0 to 99. Larger numbers take precedence over smaller numbers (same as patchXXX.dat)
;PatchFile0=mods\RP_data
@@ -53,6 +58,7 @@ SpeedMultiInitial=100
;Set to 6 for DX9 fullscreen windowed (the resolution in f2_res.ini should be set to the same aspect ratio as your desktop resolution)
;A DX9 mode is required for any graphics related script extender functions to work (i.e. fullscreen shaders)
;Modes 1, 2 and 3 are no longer supported
;This option will always be read from the main ddraw.ini file when using the hi-res patch by Mash
Mode=0
;If using a DX9 mode, this changes the resolution
@@ -91,6 +97,7 @@ Use32BitHeadGraphics=0
;Set to 1 to automatically search for alternative AVI video files when Fallout tries to play the game movies
;Set to 2 to force AVI videos to fit the screen width
;Requires DX9 graphics mode
;The recommended video codec is Xvid
AllowDShowMovies=0
;Fade effect time percentage modifier
@@ -108,7 +115,7 @@ ActionPointsBar=0
;Set to 2 to skip correcting the position of entrance markers on town maps
;You can use resized FRMs in 700x682 for town maps in the expanded world map interface
;Requires High Resolution Patch v4.1.8 and a new WORLDMAP.frm file in art\intrface\ (included in sfall.dat)
;The resolution of hi-res patch must be set to at least 890x720
;The resolution of the hi-res patch must be set to at least 890x720
ExpandWorldMap=0
;Set to 1 to draw a dotted line while traveling on the world map (similar to Fallout 1)
@@ -129,9 +136,6 @@ WorldMapTerrainInfo=0
;Set to 0 to leave the default unchanged (i.e. 4). The maximum is 32
NumSoundBuffers=0
;Set to 1 to enable fade effects for background music when stopping and starting the playback
FadeBackgroundMusic=1
;Set to 1 to allow attaching sound files to combat float messages
AllowSoundForFloats=0
@@ -185,7 +189,7 @@ BackgroundMouse=0
SpeedModKey=-1
;A key to press to toggle the speed tweak on or off
;Specify 0 if you don't want a toggle key, or a DX scancode otherwise
;Set to 0 if you don't want a toggle key, or a DX scancode otherwise
SpeedToggleKey=0
;The keys corresponding to the 10 speed slots
@@ -255,8 +259,8 @@ WorldMapEncounterFix=0
WorldMapEncounterRate=5
;The number of slots available in the locations list panel of the world map
;Set to 0 to leave unchanged. 17 is default.
;Setting this greater than 17 requires a replacement background FRM, or you'll get glitched graphics
;Set to 0 to leave the default unchanged (i.e. 17). The maximum is 127
;Setting this greater than 17 requires a replacement WMTABS.frm file in art\intrface\, or you'll get glitched graphics
WorldMapSlots=0
;To start a new game somewhere other than artemple.map, uncomment the next line and set it to the map you want to load
@@ -327,7 +331,7 @@ Movie17=credits.mve
;To change the limit of the distance away from the player to which you're allowed to scroll the local maps, uncomment the next two lines
;Defaults are 480 in the x direction and 400 in the y direction.
;Not compatible with the res patch!
;Does not work with the hi-res patch by Mash!
;LocalMapXLimit=480
;LocalMapYLimit=400
@@ -462,9 +466,6 @@ Doctor=293
Science=293
Repair=293
;Set to 1 to remove window position rounding for script-created windows
RemoveWindowRounding=1
;Set to 1 to add scroll buttons to the pipboy quest list, and remove the quests per area limit
;Set to 2 to use a different set of scroll buttons
UseScrollingQuestsList=1
@@ -589,15 +590,12 @@ SuperStimExploitFix=0
InventoryApCost=4
QuickPocketsApCostReduction=2
;Set to 1 to enable the balanced bullet distribution formula for burst attacks
ComputeSprayMod=0
;These options modify the bullet distribution of burst attacks if ComputeSprayMod is 1
;All the bullets are divided into three groups: central, left and right
;These three groups will then travel along three parallel tracks, trying to hit targets on the way
;CenterMult/Div set the ratio of how many bullets go to the central group, and remaining bullets are divided equally to left and right sides
;TargetMult/Div set the ratio of how many bullets in the central group will attack the primary target directly
;Multipliers are capped at divisor values
;These options modify the bullet distribution of burst attacks
;All the bullets are divided into three groups: center, left, and right
;These groups will then travel along three parallel tracks, trying to hit targets on the way
;CenterMult/Div set the ratio of how many bullets go to the center group, and the remaining are divided equally to the left and right sides
;TargetMult/Div set the ratio of how many bullets in the center group will attack the primary target directly
;Multiplier values are capped at divisor values
ComputeSpray_CenterMult=1
ComputeSpray_CenterDiv=3
ComputeSpray_TargetMult=1
@@ -618,10 +616,6 @@ ExplosionsEmitLight=0
;MovieTimer_artimer3=270
;MovieTimer_artimer4=360
;Set to 1 to enable the new arrays behavior (default behavior)
;Set to 0 for backward compatibility with pre-3.4 scripts
ArraysBehavior=1
;Set to 1 to add proper check for ammo before attacking and proper calculation of the number of burst rounds
;By default, weapons can make attacks when at least one ammo is left, regardless of ammo cost calculations
;Note that enabling this option will prevent super cattle prods and mega power fists from attacking with only one ammo left
@@ -746,10 +740,6 @@ CreateObjectSidFix=0
;Note that enabling this option will cause problems for existing grave scripts
GraveContainersFix=0
;Set to 1 to fix the issue with the division operator treating negative integers as unsigned
;Note: To perform the unsigned integer division, use the new 'div' operator
DivisionOperatorFix=1
;Set to 1 to fix the priority score calculation for choosing the best weapon for NPCs
;Note that enabling this option can affect the weapon of choice for some NPCs
AIBestWeaponFix=1
@@ -833,7 +823,7 @@ GlobalScriptPaths=scripts\gl*.int,scripts\sfall\gl*.int
;XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
[Debugging]
;Extra sfall configuration settings that can be used by modders
;This section is not effected by the 'UseCommandLine' option. It will always be read from the main ini
;This section is not affected by the 'UseCommandLine' option. It will always be read from the main ddraw.ini file
;Set to 1 to enable sfall debugging mode
Enable=0
@@ -848,11 +838,8 @@ AllowUnsafeScripting=0
;Does not require sfall debugging mode
;ExtraCRC=0x00000000,0x00000000
;Set to 1 to skip the executable file size check
;Set to 1 to skip the compatibility mode check
;Does not require sfall debugging mode
SkipSizeCheck=0
;Change to 1 to skip the compatibility mode check
SkipCompatModeCheck=0
;Fallout 2 Debug Patch
@@ -875,6 +862,10 @@ DebugMode=0
;Set to 1 to hide error messages in debug output when a null value is passed to the function as an object
HideObjIsNullMsg=0
;A key to press to toggle the display of the hex grid on the map on or off
;Set to 0 to disable, or a DX scancode otherwise
MapGridToggleKey=0
;Set to 1 to stop Fallout from deleting non read-only protos at startup
;Has pretty nasty side effects when saving/reloading, so don't use for regular gameplay
DontDeleteProtos=0
Binary file not shown.
+12 -12
View File
@@ -1,14 +1,14 @@
/*
Ammo INI Loader mod for Fallout 2 by NovaRain
---------------------------------------------
Ammo INI Loader mod v1.1 for Fallout 2 by NovaRain
--------------------------------------------------
- modifies ammo protos with data from an INI file:
* AmmoGlovz.ini if DamageFormula=1 or 2 in ddraw.ini
* AmmoYAAM.ini if DamageFormula=5 in ddraw.ini
* AmmoMod.ini if not using any bulit-in damage formula
Requires sfall 3.5 or higher
Requires sfall 4.0/3.8.29 or higher
*/
@@ -23,7 +23,7 @@ variable ammoData;
variable enabled;
procedure start begin
variable i := 1, ammo, ammoPid, dmgMod;
variable i := 1, ammo, ammoSection, dmgMod;
if game_loaded then begin
enabled := get_ini_setting("ddraw.ini|Misc|DamageFormula");
if (enabled == 1 or enabled == 2) then
@@ -37,19 +37,19 @@ procedure start begin
if (enabled <= 0) then return;
ammoData := create_array_map;
ammoPid := enabled; // pid from the first section
while (ammoPid > 0) do begin
ammoSection := get_ini_section(ammoIni, "" + i);
while (ammoSection.pid > 0) do begin
ammo := create_array_map; // create permanent arrays
ammo.ac_adjust := get_ini_setting(ammoIni + "|" + i + "|ac_adjust");
ammo.dr_adjust := get_ini_setting(ammoIni + "|" + i + "|dr_adjust");
ammo.ac_adjust := atoi(ammoSection.ac_adjust);
ammo.dr_adjust := atoi(ammoSection.dr_adjust);
// dam_mult and dam_div must be positive integers
dmgMod := get_ini_setting(ammoIni + "|" + i + "|dam_mult");
dmgMod := atoi(ammoSection.dam_mult);
ammo.dam_mult := dmgMod if (dmgMod > 0) else 1;
dmgMod := get_ini_setting(ammoIni + "|" + i + "|dam_div");
dmgMod := atoi(ammoSection.dam_div);
ammo.dam_div := dmgMod if (dmgMod > 0) else 1;
ammoData[ammoPid] := ammo;
ammoData[atoi(ammoSection.pid)] := ammo;
i++;
ammoPid := get_ini_setting(ammoIni + "|" + i + "|pid");
ammoSection := get_ini_section(ammoIni, "" + i);
end
call map_enter_p_proc;
debug_msg("Ammo INI Loader mod: " + ammoIni + " - set " + (i - 1) + " ammo protos.");
+3 -3
View File
@@ -1,5 +1,5 @@
Ammo INI Loader mod for Fallout 2 by NovaRain
---------------------------------------------
Ammo INI Loader mod v1.1 for Fallout 2 by NovaRain
--------------------------------------------------
- modifies ammo protos with data from an INI file:
* AmmoGlovz.ini if DamageFormula=1 or 2 in ddraw.ini
@@ -7,6 +7,6 @@ Ammo INI Loader mod for Fallout 2 by NovaRain
* AmmoMod.ini if not using any bulit-in damage formula
Requires sfall 3.5 or higher.
Requires sfall 4.0/3.8.29 or higher.
To use, copy gl_ammomod.int to your scripts folder, and copy the INI files to the same directory as sfall.
Binary file not shown.

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